Kuinka saa glob:n ymmärtämään erikoismerkkejä? Eli jos polun nimessä on esim. kulmasulkeita, ei glob listaa yhtään mitään.
Esimerkki.
------------
$list = glob('alakansio/kansio [2005]');
------------
Nyt $list ei sisällä mitään, onko jotain keinoa jolla tämän ongelman voisi kiertää? Opendir(), readdir() -systeemi ei nyt käy.
Esimerkki.
------------
$list = glob('alakansio/kansio [2005]');
------------
Nyt $list ei sisällä mitään, onko jotain keinoa jolla tämän ongelman voisi kiertää? Opendir(), readdir() -systeemi ei nyt käy.
Vastaukset 1
Vanhimmat
[] on nimenomaan eräs glob()-funktion ymmärtämistä erikoismerkeistä. Esimerkissäsi haet tiedostonimiä, jotka ovat muotoa 'alakansio/kansio 2', '.../kansio 0' tai '.../kansio 5'. [] siis ilmoittaa joukon kelpaavia merkkejä.
Jos haluat merkit [] kirjaimellisesti, voit käyttää \:a niiden edessä. Ts. $list = glob('alakansio/kansio \[2005\]'); Ohjelmallisesti tämä enemmän tai vähemmän toimivasti onnistuisi varmaan:
$nimi = "alakansio/kansio [2005]";
$list = glob(str_replace(array('[', ']', '*'), array('\[', '\]', '\*'), $nimi));