Ik ben een website aan het maken waarop ik mijn fotos kan tonen. Daarvoor heb ik een script gemaakt die alle fotos in een bepaalde map opzoekt, in een array stopt en vervolgens op de pagina de fotos van een bepaalde categorie/map weergeeft:
Op dit moment geeft het script de fotos in een (ogenschijnlijk) willekeurige volgorde weer. Ik wil graag dat hij de array $images soorteert op alfabetische volgorde.
Het probleem is dat de array weer arrays bevat. Een print_r ($images); geeft dit als resultaat:
Array ( [0] =>
Array ( [0] => work/nature/ [1] => t_nat2.jpg ) [1] =>
Array ( [0] => work/nature/ [1] => t_nat4.jpg ) [2] =>
Array ( [0] => work/nature/ [1] => t_nat1.jpg ) [3] =>
Array ( [0] => work/nature/ [1] => t_nat5.jpg ) [4] =>
Array ( [0] => work/nature/ [1] => t_nat3.jpg ) )
Wat ik dus wil is de bestandsnamen (t_natX.jpg) in de array sorteren op alfabetische volgorde.
Heeft iemand een idee hoe ik dit aan kan pakken?
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
| $extensions = array("jpg", "gif", "png"); $images = array(); // Fotos uit opgegeven map in array zetten ($dir = path $file = bestandsnaam). function findimages($dir) { global $extensions; $images = array(); if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if($file != "." && $file != ".." && !is_dir($file) && in_array(substr($file, -3), $extensions) && substr($file, 0, 2) == "t_") { $images[] = array($dir, $file); } } closedir($dh); } } return $images; } // Fotos van bepaalde categorie uit array findimages() halen en printen function loadImg($cat) { $images = findimages("work/$cat/"); foreach($images as $picture) { $img = $picture[0] . $picture[1]; print("<div class=\"thumb\"><a href=\"$picture[0]". substr($picture[1], 2) . "\" rel=\"lightbox[$cat]\" title=\"Copyright © 2008 Niels Vos. All Rights Reserved.\"><img class=\"random\" src=\"$img\" alt=\"Copyright © 2008 Niels Vos. All Rights Reserved.\" /></a></div>"); } } |
Op dit moment geeft het script de fotos in een (ogenschijnlijk) willekeurige volgorde weer. Ik wil graag dat hij de array $images soorteert op alfabetische volgorde.
Het probleem is dat de array weer arrays bevat. Een print_r ($images); geeft dit als resultaat:
Array ( [0] =>
Array ( [0] => work/nature/ [1] => t_nat2.jpg ) [1] =>
Array ( [0] => work/nature/ [1] => t_nat4.jpg ) [2] =>
Array ( [0] => work/nature/ [1] => t_nat1.jpg ) [3] =>
Array ( [0] => work/nature/ [1] => t_nat5.jpg ) [4] =>
Array ( [0] => work/nature/ [1] => t_nat3.jpg ) )
Wat ik dus wil is de bestandsnamen (t_natX.jpg) in de array sorteren op alfabetische volgorde.
Heeft iemand een idee hoe ik dit aan kan pakken?