Datum en tijd naar Nederlands bij sorteren
uit een dir. te sorten op plaatsing/wijzigingsvolgorde.
Ik heb al wat geprobeerd om de tekst en de juiste datum
in het Nederlands te zetten met:
setlocale(LC_TIME, "nl_NL"); en met strftime("d F Y");
Maar zie niks wijzigen. Waarschijnlijk verkeerde plek.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
function Sort_Directory_Files_By_Last_Modified($dir, $sort_type = 'descending', $date_format = "d F Y H:i:s.")
{
$files = scandir($dir);
$array = array();
foreach($files as $file)
{
if($file != '.' && $file != '..')
{
$now = time();
$last_modified = filemtime($dir.$file);
$time_passed_array = array();
$diff = $now - $last_modified;
$days = floor($diff / (3600 * 24));
if($days)
{
$time_passed_array['days'] = $days;
}
$diff = $diff - ($days * 3600 * 24);
$hours = floor($diff / 3600);
if($hours)
{
$time_passed_array['hours'] = $hours;
}
$diff = $diff - (3600 * $hours);
$minutes = floor($diff / 60);
if($minutes)
{
$time_passed_array['minutes'] = $minutes;
}
$seconds = $diff - ($minutes * 60);
$time_passed_array['seconds'] = $seconds;
$array[] = array('file' => $file,
'timestamp' => $last_modified,
'date' => date ($date_format, $last_modified),
'time_passed' => $time_passed_array);
}
}
usort($array, create_function('$a, $b', 'return strcmp($a["timestamp"], $b["timestamp"]);'));
if($sort_type == 'descending')
{
krsort($array);
}
return array($array, $sort_type);
}
$dir = $_SERVER['DOCUMENT_ROOT'].'uploaded_files/activiteit/jpg/';
$array = Sort_Directory_Files_By_Last_Modified($dir);
// Info Array
$info = $array[0];
// Sort Type
$sort_type = $array[1];
echo '<h3>'.$dir.'</h3>';
echo 'Order by: Last Modified ('.$sort_type.')<br />';
foreach($info as $key => $detail)
{
echo '<h4 style="color: #3B4F9F;">'.$detail['file'].'</h4>';
echo 'Laatste wijziging: '.$detail['date'].'<br />';
$time_passed = '';
foreach($detail['time_passed'] as $type => $value)
{
$time_passed .= $value." ".$type.", ";
}
$time_passed = "<span style='color: #377420;'>".rtrim($time_passed, ", ")."</span> ago";
echo $time_passed."nn";
}
?>
function Sort_Directory_Files_By_Last_Modified($dir, $sort_type = 'descending', $date_format = "d F Y H:i:s.")
{
$files = scandir($dir);
$array = array();
foreach($files as $file)
{
if($file != '.' && $file != '..')
{
$now = time();
$last_modified = filemtime($dir.$file);
$time_passed_array = array();
$diff = $now - $last_modified;
$days = floor($diff / (3600 * 24));
if($days)
{
$time_passed_array['days'] = $days;
}
$diff = $diff - ($days * 3600 * 24);
$hours = floor($diff / 3600);
if($hours)
{
$time_passed_array['hours'] = $hours;
}
$diff = $diff - (3600 * $hours);
$minutes = floor($diff / 60);
if($minutes)
{
$time_passed_array['minutes'] = $minutes;
}
$seconds = $diff - ($minutes * 60);
$time_passed_array['seconds'] = $seconds;
$array[] = array('file' => $file,
'timestamp' => $last_modified,
'date' => date ($date_format, $last_modified),
'time_passed' => $time_passed_array);
}
}
usort($array, create_function('$a, $b', 'return strcmp($a["timestamp"], $b["timestamp"]);'));
if($sort_type == 'descending')
{
krsort($array);
}
return array($array, $sort_type);
}
$dir = $_SERVER['DOCUMENT_ROOT'].'uploaded_files/activiteit/jpg/';
$array = Sort_Directory_Files_By_Last_Modified($dir);
// Info Array
$info = $array[0];
// Sort Type
$sort_type = $array[1];
echo '<h3>'.$dir.'</h3>';
echo 'Order by: Last Modified ('.$sort_type.')<br />';
foreach($info as $key => $detail)
{
echo '<h4 style="color: #3B4F9F;">'.$detail['file'].'</h4>';
echo 'Laatste wijziging: '.$detail['date'].'<br />';
$time_passed = '';
foreach($detail['time_passed'] as $type => $value)
{
$time_passed .= $value." ".$type.", ";
}
$time_passed = "<span style='color: #377420;'>".rtrim($time_passed, ", ")."</span> ago";
echo $time_passed."nn";
}
?>
Hier vind je een (tijdelijke) link:
https://www.pctraverse.nl/list_date.php
Edit:
Ik heb code-tags geplaatst. Gelieve dit in het vervolg zelf toe te voegen aan je bericht.
Zie ook: Veel gestelde vragen: Welke UBB-codes kan ik gebruiken.
Zie ook: Veel gestelde vragen: Welke UBB-codes kan ik gebruiken.
Gewijzigd op 08/01/2018 08:57:58 door - Ariën -
Let ook op dat de setting "nl_NL" afhankelijk is van je OS.
Gewijzigd op 08/01/2018 08:59:14 door - Ariën -
Maar gaf telkens 'kan pagina niet openen'.
Vandaar dat ik het heb weggehaald ivm de link.
Maar neem aan dat ik de date moet weghalen en daar de strftime voor in de plek moet zetten.
Kun je aub een voorbeeld geven..
Met als format in je $date_format-argument :
%d %B %Y %H:%M:%S
Code (php)
1
2
3
4
5
2
3
4
5
function Sort_Directory_Files_By_Last_Modified($dir, $sort_type = 'descending', $date_format = "%d %B %Y %H:%M:%S")
.
.
.
'date' => strftime($date_format, $last_modified),
.
.
.
'date' => strftime($date_format, $last_modified),
Maar er verandert niks.
De verstreken tijd blijft wel kloppen.
Om welke gaat het?
Gewijzigd op 08/01/2018 17:33:03 door - Ariën -
Linux cloudblonde.managedomain.nl 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64
Mail je hosting eens of ze de Nederlandse locale kunnen toevoegen.
Ik heb het nu opgelost.
Bovenaan:
En voor de verstreken tijd heb ik dit gebruikt.
Maar is misschien wel andere mogelijkheid?
In principe blijven bestanden ook maar 2 weken bestaan.