Olen tällaisen räpellyksen saanut aikaiseksi, mutta eteenpäin en tunnu pääsevän.
Funktio hakee kansiosta "$HTC_polkuAlbumit" kaikki kansiot ja tekee niistä taulukon. Se toimii hienosti.
Tarkoitus olisi lajitella albumit uusimmasta vanhimpaan ja taulukon pitäisi palauttaa vain albumien nimet (nyt palauttaa myös muokkausajat). Kertokaa kokeneemmat mihin suuntaan tässä pitäisi ajatusta kehittää?
function galleriaHaeAlbumit() { global $HTC_polkuAlbumit; global $galleriaAlbumit; $galleriaHaeAlbumitKansio = opendir($HTC_polkuAlbumit); while(($galleriaAlbumi = readdir($galleriaHaeAlbumitKansio)) !== false) { if(is_dir($HTC_polkuAlbumit.$galleriaAlbumi)) { if($galleriaAlbumi != "." && $galleriaAlbumi != "..") //Windows-palvelinta varten { $muokattu = filemtime($HTC_polkuAlbumit.$galleriaAlbumi); $galleriaAlbumit[] = array($muokattu, $galleriaAlbumi); } } } closedir($galleriaHaeAlbumitKansio); asort($galleriaAlbumit); return $galleriaAlbumit; }
janne-t kirjoitti:
Mitäs luulisit, mitä pitäis tehdä jotta lähtis muokkausajat palautusarvosta?
Johan pomppas. Tietysti se muokkausaika poistuu, jos sen tuosta poistan, mutta taas ilman tuota sorttaus ajan mukaan ei onnistu. Tarkoitus oli siis saada järjestettyä nuo aikajärjestykseen.
Poista muokkausajat taulukosta ennen return-riviä. Silloin järjestely menee oikein.
En onnistunut löytämään tuota taulukosta poistamista tuossa muodossa, mutta keksinpä sitä kautta tällaisen ratkaisun. :D So proud of myself!
function galleriaHaeAlbumit() { global $HTC_polkuAlbumit; global $galleriaAlbumit; $galleriaHaeAlbumitKansio = opendir($HTC_polkuAlbumit); while(($galleriaAlbumi = readdir($galleriaHaeAlbumitKansio)) !== false) { if(is_dir($HTC_polkuAlbumit.$galleriaAlbumi)) { if($galleriaAlbumi != "." && $galleriaAlbumi != "..") //Windows-palvelinta varten { $muokattu = filemtime($HTC_polkuAlbumit.$galleriaAlbumi); $galleriaAlbumitFirst[] = array($muokattu, $galleriaAlbumi); } } } closedir($galleriaHaeAlbumitKansio); rsort($galleriaAlbumitFirst); for($i = 0; $i < count($galleriaAlbumitFirst); $i++) { $galleriaAlbumit[] = $galleriaAlbumitFirst[$i][1]; } }
Ratkaisusi on juuri hyvä! Sama toteutus oli minullakin mielessä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.