Süntaks:
Funktsiooni glob () süntaks on toodud allpool. Sellel funktsioonil võib olla kaks argumenti. Esimene argument võtab mustri väärtuse, mida kasutatakse failist ja kaustast otsimiseks. Teine argument on valikuline, mida kasutatakse väljundi genereerimiseks erinevatel viisidel. Allpool kirjeldatakse mustri määratlemiseks kasutatavaid sümboleid ja erinevat tüüpi lippe, mida saab kasutada selle funktsiooni teises argumendis.
massiivi glob (string $ muster [, int $ flags = 0])Enamasti kasutatakse mustris sümboleid
Muster | Eesmärk |
---|---|
? | Seda kasutatakse täpselt ühe tähemärgi (mis tahes) sobitamiseks. |
* | Seda kasutatakse nulli või enama tähemärgi sobitamiseks. |
\ | Seda kasutatakse märkide eemaldamiseks, kui kasutatakse lippu GLOB_NOESCAPE. |
[…] | Seda kasutatakse tähemärkide vahemiku sobitamiseks. |
Lipuväärtused
Funktsiooni glob () valikulises argumendis saab kasutada järgmisi lipuväärtusi.
Väärtus | Eesmärk |
---|---|
GLOB_MARK | See lisab iga tagastatud kauba juurde kaldkriipsu. |
GLOB_NOSORT | See tagastab kataloogis kuvamata sortimata failid. |
GLOB_NOCHECK | Kui vastet ei leita, tagastatakse otsingumuster. |
GLOB_NOESCAPE | See kasutab tagasilööke ja ei tsiteeri metamärke. |
GLOB_BRACE | See laiendab grupi tähemärke vastavusse. |
GLOB_ONLYDIR | See tagastab kataloogiloendi, mis sobis ainult mustriga. |
GLOB_ERR | Seda kasutatakse tõrke ilmnemisel peatamiseks. |
Näide 1: lugege kõiki PHP-faile sümboliga *
Järgmine näide näitab, kuidas otsida kõiki praeguse asukoha PHP-faile '* abil.php 'muster. Looge järgmise skriptiga PHP-fail.
Muster otsib failinime laiendiga PHP. Funktsiooni tagastusväärtus on massiiv, mis prinditakse väljundina.
// Prindi praeguse kataloogi tekstifailide loendprint_r (glob ("*.php "));
?>
Väljund:
Järgmine väljund ilmub pärast skripti käivitamist serverist. See näitab, et praeguses asukohas on viis PHP-faili.
Näide 2: lugege konkreetseid tekstifaile, kasutades?sümbol
Järgmine näide otsib kõiki tekstifaile, mis sisaldavad viie tähemärgiga failinime. Looge järgmise skriptiga PHP-fail.
The "?????.txt ' mustrit kasutatakse viie tähemärgise failinimega tekstifaili otsimiseks. Funktsiooni glob () väljund on massiiv, mis on salvestatud muutujasse, $ faile. Selle muutuja väärtused prinditakse kasutades foreach silmus.
// Loe praeguse asukoha konkreetseid tekstifailinimesid$ files = glob ("?????.txt ");
// Prindi failinimed
foreach ($ failid failina $)
kaja "" . $ fail. "
";
?>
Väljund:
Järgmine väljund ilmub pärast skripti käivitamist serverist. See näitab, et vastavalt mustrile on praeguses asukohas kaks tekstifaili.
Näide 3: Lugege silmuse abil kõiki praeguse asukoha faile
Järgmine näide otsib igat tüüpi faile praegusest asukohast ja printib silmuse abil igale reale failinimed. '*.* ' mustrit kasutatakse funktsioonis glob () mis tahes tüüpi failide otsimiseks. Funktsiooni tagastatud väärtus salvestatakse massiivi, $ faile. Seejärel loendatakse otsitud tulemustest failide koguarv. igaühele loopi kasutatakse iga rea massiivi väärtuste printimiseks.
// Loe kõiki praeguse asukoha failinimesid$ files = glob ("*.* ");
// Loendage failide koguarv
$ count = count ($ failid);
echo "Faile kokku = $ count
";
echo "Failid on:
";
// Prindi failinimed
foreach ($ failid failina $)
kaja "" . $ fail. "
";
?>
Väljund:
Järgmine väljund ilmub pärast skripti käivitamist serverist. See näitab, et praeguses asukohas on kuus faili.
Näide 4: otsige faili, mis algab konkreetse märgiga
Järgmine näide otsib tähega algavat PHP-faili 'g'. Looge järgmise skriptiga PHP-fail.
'g *.php ' kasutatakse failide otsimisel mustrina. Nagu eelmised näited, salvestatakse funktsiooni glob () tagastatav väärtus massiivi, mis hiljem trükitakse foreach silmus.
// Otsingufail algab tähega 'g'$ files = glob ("g *.php ");
// Failide printimine
foreach ($ failid failina $)
echo $ fail. "
";
?>
Väljund:
Järgmine väljund ilmub pärast skripti käivitamist serverist. See näitab, et praeguses asukohas, kus failid algavad tähemärgiga, on neli PHP-faili 'g'.
Näide 5: lugege kõiki faile ja kaustu
Kõigis eelmistes näidetes kasutatud muster otsis ainult faile praegusest asukohast. Järgmine näide näitab, kuidas otsida kõiki praeguse asukoha faile ja kaustu. Looge järgmise skriptiga PHP-fail.
'*' kasutatakse funktsiooni glob () mustrina kõigi failide ja kaustade otsimiseks. Funktsiooni tagastatud väärtused salvestatakse massiivi, mis prinditakse hiljem.
// Loe kõiki praeguse asukoha faile ja kaustu$ failid = glob ("*");
// Prindige failid ja kaustad
foreach ($ failid failina $)
echo $ fail. "
";
?>
Väljund:
Järgmine väljund ilmub pärast skripti käivitamist serverist. See näitab, et praeguses asukohas on viis PHP-faili, kolm tekstifaili ja kaks kausta.
Järeldus
Mis tahes faili või kausta otsimise meetodid on näidatud selles õpetuses, kasutades PHP funktsiooni glob (). Faili saab otsida laienduse, algusmärgi või märkide koguarvu määramise põhjal. Loodetavasti on funktsiooni glob () kasutamine PHP-s lugejaile selgem ja lihtsam pärast selle õpetuse näidete harjutamist.