Moro,
Tekaisin tuollaisen koodinpätkän. Se hakee hakemistosta kaikki *publications2*.php tiedostot ja poistaa niistä hakemistopolut sekä kaiken muun jättäen jäljelle vain vuosiluvut, jotka skripti sitten muuttaa linkeiksi tyyliin "hakemisto/publications2003.php" muuntuu linkiksi "2003". Ongelma on siinä, että miten saan simppelisti tulostettua nuo linkit aloittaen isoimmasta luvusta ts. kansion viimeisestä hakemistosta?
******************************************************** <?php foreach (glob("*publications2*.php" ) as $filename) { $filename = basename($filename); $filename = str_replace("publications","",$filename); $filename = str_replace(".php","",$filename); echo "<li><a href=\"publications$filename.php\" title=\"Publications, year $filename\">$filename</a></li>"; } ?> ********************************************************
Foreach-silmukan sijaan ota globin palauttama taulu johonkin muuttujaan ja käy tämä taulu nurinpäin läpi
for($i = count($taulu) - 1; $i >= 0; $i--)
Kiitoksia, pitääpä kokeilla tuota.
Moro,
Otan nyt tuossa globin taulun filearray-muuttujaan. Sitten olisi tarkoitus poistaa sieltä taulukon alkioista nuo ylimääräiset merkit ja jättää vain suosiluvut ja sen jälkeen tulostaa alkiot käännetyssä järjestyksessä. Nyt alkiot on kuitenkin tyhjiä. Missä vika?
<?php $filearray = glob("*publications2*.php"); for($i = count($filearray) - 1; $i >= 0; $i--) { $filearray[i] = basename($filearray[i]); $filearray[i] = str_replace("publications","",$filearray[i]); $filearray[i] = str_replace(".php","",$filearray[i]); echo "<li><a href=\"publications$filearray[i].php\" title=\"Publications, year $filearray[i]\">$filearray[i]</a></li>"; } ?>
Mod. edit: kooditagit
Ainakin sulta puuttuu tuolta i-muuttujasta dollarimerkki.
Kiitoksia, se ratkaisi ongelman.
Aihe on jo aika vanha, joten et voi enää vastata siihen.