परिचय
ग्लोब:// स्ट्रीम रैपर 5.3.0 के बाद सभी PHP संस्करणों में उपलब्ध है। यह पथनाम ढूंढता है जो दिए गए पैटर्न से मेल खाता है। इसी तरह का उद्देश्य PHP के फाइल सिस्टम फंक्शन glob() . द्वारा पूरा किया जाता है जो libc glob() नियमों का पालन करता है।
पैरामीटर
विशेष वर्ण
- * - शून्य या अधिक वर्णों से मेल खाता है।
- ? - ठीक एक वर्ण (किसी भी वर्ण) से मेल खाता है।
- [...] - वर्णों के समूह के एक वर्ण से मेल खाता है। यदि पहला वर्ण है!, समूह में नहीं होने वाले किसी भी वर्ण से मेल खाता है।
- \ - GLOB_NOESCAPE ध्वज का उपयोग किए जाने को छोड़कर, निम्न वर्ण से बच जाता है।
मान्य फ़्लैग
- GLOB_MARK - लौटाई गई प्रत्येक निर्देशिका में एक स्लैश (विंडोज़ पर एक बैकस्लैश) जोड़ता है
- GLOB_NOSORT - निर्देशिका में दिखाई देने वाली फ़ाइलों को वापस करें (कोई छँटाई नहीं)। जब इस ध्वज का उपयोग नहीं किया जाता है, तो पथनामों को वर्णानुक्रम में क्रमबद्ध किया जाता है
- GLOB_NOCHECK - खोज पैटर्न लौटाएं यदि इससे मेल खाने वाली कोई फाइल नहीं मिली
- GLOB_NOESCAPE - बैकस्लैश मेटाएक्टैक्टर्स को उद्धृत नहीं करते हैं
- GLOB_BRACE - 'a', 'b', या 'c' से मेल खाने के लिए {a,b,c} का विस्तार करता है
- GLOB_ONLYDIR − केवल वही निर्देशिका प्रविष्टियां लौटाएं जो पैटर्न से मेल खाती हों
- GLOB_ERR - पठन त्रुटियों पर रोक (जैसे अपठनीय निर्देशिका), डिफ़ॉल्ट रूप से त्रुटियों पर ध्यान नहीं दिया जाता है।
उदाहरण
ग्लोब () फ़ंक्शन का उपयोग करना
<?php foreach (glob("test/*.php") as $filename) { echo "$filename size " . filesize($filename) . "\n"; } ?>
ग्लोब:// स्ट्रीम रैपर का उपयोग करना
<?php $it = new DirectoryIterator("glob://test/*.php"); foreach($it as $f) { echo "File name: " . $f->getFilename() . " size: " . $f->getSize() . "\n";); } ?>
दोनों स्क्रिप्ट परीक्षण . में .php एक्सटेंशन वाली फ़ाइलों का नाम और आकार प्रदर्शित करती हैं उपनिर्देशिका