কম্পিউটার টিউটোরিয়াল

PHP glob:// র‍্যাপার


ভূমিকা

glob:// স্ট্রিম র‍্যাপার PHP 5.3.0 এর পরের সব ভার্সনে উপলব্ধ। এটি দিয়ে প্যাটার্ন ম্যাচ করে পাথনেম খুঁজে বের করা যায়। 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 — রিড এরর হলে থামায় (যেমন অনরিডেবল ডিরেক্টরি), ডিফল্টভাবে এরর উপেক্ষা করা হয়।

উদাহরণ

glob() ফাংশন ব্যবহার

<?php foreach (glob("test/*.php") as $filename) { echo "$filename size " . filesize($filename) . "\n"; } ?>

glob:// স্ট্রিম র‍্যাপার ব্যবহার

<?php $it = new DirectoryIterator("glob://test/*.php"); foreach($it as $f) { echo "File name: " . $f->getFilename() . " size: " . $f->getSize() . "\n"; } ?>

দুটি স্ক্রিপ্টই test সাবডিরেক্টরিতে .php এক্সটেনশন والی ফাইলগুলোর নাম এবং সাইজ দেখাবে।


  1. PHP TypeError

  2. PHP ট্যাগস (PHP Tags)

  3. PHP pi() ফাংশন

  4. PHP-তে glob() ফাংশন