फ़ंक्शन glob
फ़ंक्शन glob दिए गए पैटर्न से मेल खाने वाली फ़ाइलों और डायरेक्टरीज़ को खोजती है।
पहले पैरामीटर में खोज पैटर्न वाली एक स्ट्रिंग पास की जाती है।
दूसरा वैकल्पिक पैरामीटर फ़ंक्शन के व्यवहार को बदलने के लिए फ़्लैग्स सेट करता है।
सिंटैक्स
glob(pattern, [flags]);
फ़्लैग्स
| फ़्लैग | विवरण |
|---|---|
GLOB_MARK |
प्रत्येक लौटाई गई डायरेक्टरी में स्लैश / जोड़ता है। |
GLOB_NOSORT |
फ़ाइलों को उसी क्रम में लौटाता है जिस क्रम में वे डायरेक्टरी में होती हैं (बिना सॉर्ट किए)। |
GLOB_NOCHECK |
खोज पैटर्न लौटाता है, यदि कोई भी मेल नहीं मिलता है। |
GLOB_NOESCAPE |
बैकस्लैश मेटा कैरेक्टर्स को एस्केप नहीं करते हैं। |
GLOB_BRACE |
कई पैटर्न पर खोज करने के लिए {a,b,c} को विस्तारित करता है। |
GLOB_ONLYDIR |
केवल उन्हीं डायरेक्टरीज़ को लौटाता है जो पैटर्न से मेल खाती हैं। |
GLOB_ERR |
पढ़ने में त्रुटियों पर रोकता है (उदाहरण के लिए, पहुंच अधिकार नहीं)। |
उदाहरण
वर्तमान डायरेक्टरी में .txt एक्सटेंशन वाली सभी फ़ाइलों को ढूंढें:
<?php
$res = glob('*.txt');
print_r($res);
?>
कोड निष्पादन का परिणाम:
['file1.txt', 'file2.txt', 'notes.txt']
उदाहरण
'test' से शुरू होने वाली किसी भी एक्सटेंशन की सभी फ़ाइलों को ढूंढें:
<?php
$res = glob('test*');
print_r($res);
?>
कोड निष्पादन का परिणाम:
['test.php', 'test.txt', 'test_image.jpg']
उदाहरण
कई पैटर्न पर खोज करने के लिए फ़्लैग GLOB_BRACE का उपयोग:
<?php
$res = glob('*.{php,txt}', GLOB_BRACE);
print_r($res);
?>
कोड निष्पादन का परिणाम:
['index.php', 'config.php', 'readme.txt']
उदाहरण
फ़्लैग GLOB_RECURSE का उपयोग करके सबडायरेक्टरीज़ में फ़ाइलों की खोज:
<?php
$res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
print_r($res);
?>
कोड निष्पादन का परिणाम:
['index.php', 'lib/utils.php', 'admin/index.php']
यह भी देखें
-
फ़ंक्शन
scandir,
जो डायरेक्टरी की सामग्री को पढ़ती है -
फ़ंक्शन
file_exists,
जो फ़ाइल के अस्तित्व की जांच करती है -
फ़ंक्शन
is_file,
जो फ़ाइल की जांच करती है