फ़ंक्शन glob

फ़ंक्शन glob दिए गए पैटर्न से मेल खाने वाली फ़ाइलों और डायरेक्टरीज़ को खोजती है। पहले पैरामीटर में खोज पैटर्न वाली एक स्ट्रिंग पास की जाती है। दूसरा वैकल्पिक पैरामीटर फ़ंक्शन के व्यवहार को बदलने के लिए फ़्लैग्स सेट करता है।

सिंटैक्स

phpglob(pattern, [flags]);

फ़्लैग्स

फ़्लैग विवरण
GLOB_MARK प्रत्येक लौटाई गई डायरेक्टरी में स्लैश / जोड़ता है।
GLOB_NOSORT फ़ाइलों को उसी क्रम में लौटाता है जिस क्रम में वे डायरेक्टरी में होती हैं (बिना सॉर्ट किए)।
GLOB_NOCHECK खोज पैटर्न लौटाता है, यदि कोई भी मेल नहीं मिलता है।
GLOB_NOESCAPE बैकस्लैश मेटा कैरेक्टर्स को एस्केप नहीं करते हैं।
GLOB_BRACE कई पैटर्न पर खोज करने के लिए {a,b,c} को विस्तारित करता है।
GLOB_ONLYDIR केवल उन्हीं डायरेक्टरीज़ को लौटाता है जो पैटर्न से मेल खाती हैं।
GLOB_ERR पढ़ने में त्रुटियों पर रोकता है (उदाहरण के लिए, पहुंच अधिकार नहीं)।

उदाहरण

वर्तमान डायरेक्टरी में .txt एक्सटेंशन वाली सभी फ़ाइलों को ढूंढें:

php<?php
  $res = glob('*.txt');
  print_r($res);
?>

कोड निष्पादन का परिणाम:

php['file1.txt', 'file2.txt', 'notes.txt']

उदाहरण

'test' से शुरू होने वाली किसी भी एक्सटेंशन की सभी फ़ाइलों को ढूंढें:

php<?php
  $res = glob('test*');
  print_r($res);
?>

कोड निष्पादन का परिणाम:

php['test.php', 'test.txt', 'test_image.jpg']

उदाहरण

कई पैटर्न पर खोज करने के लिए फ़्लैग GLOB_BRACE का उपयोग:

php<?php
  $res = glob('*.{php,txt}', GLOB_BRACE);
  print_r($res);
?>

कोड निष्पादन का परिणाम:

php['index.php', 'config.php', 'readme.txt']

उदाहरण

फ़्लैग GLOB_RECURSE का उपयोग करके सबडायरेक्टरीज़ में फ़ाइलों की खोज:

php<?php
  $res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
  print_r($res);
?>

कोड निष्पादन का परिणाम:

php['index.php', 'lib/utils.php', 'admin/index.php']

यह भी देखें

  • फ़ंक्शन scandir,
    जो डायरेक्टरी की सामग्री को पढ़ती है
  • फ़ंक्शन file_exists,
    जो फ़ाइल के अस्तित्व की जांच करती है
  • फ़ंक्शन is_file,
    जो फ़ाइल की जांच करती है