ভূমিকা
phar:// স্ট্রিম র্যাপার PHP 5.3.0 এর পরের সব ভার্সনে উপলব্ধ। Phar মানে PHP Archive। এটি PHP অ্যাপ্লিকেশন বা লাইব্রেরি বিতরণ করতে ব্যবহৃত হয় এবং সাধারণ PHP ফাইল হিসেবে এক্সিকিউট হয়। phar:// র্যাপার fopen() দিয়ে ফাইল খোলা (রিড/রাইট), রিনেম, এবং ডিরেক্টরি স্ট্রিম অপারেশন opendir() এবং ডিরেক্টরি তৈরি/মুছে ফেলা সাপোর্ট করে।
Phar ক্লাস একটি ডিরেক্টরিতে থাকা অ্যাপ্লিকেশন রিসোর্সগুলো প্যাকেজ করে একটি phar আর্কাইভে রূপান্তর করতে দেয়। রিড অপারেশন করার জন্য এই আর্কাইভকে phar:// র্যাপারে রাখা হয়।
phar আর্কাইভ বিল্ড করা
শুরুতে নিশ্চিত করুন php.ini-এ phar.readonly সেটিং 0 সেট করা আছে। তারপর একটি src ফোল্ডার তৈরি করুন যেখানে অ্যাপ্লিকেশনের সব রিসোর্স রাখবেন। index.php ফাইল তৈরি করুন—
<?php echo "phar application started"; ?>
Phar ক্লাসের অবজেক্ট ব্যবহার করে src ফোল্ডারের ফাইলগুলো ধরে buildFromDirectory() মেথড দিয়ে phar আর্কাইভ বানান। index.php কে setDefaultStub হিসেবে স্পেসিফাই করুন—
<?php // php.ini setting phar.readonly must be set to 0 $pharFile = 'app.phar'; // clean up if (file_exists($pharFile)) { unlink($pharFile); } if (file_exists($pharFile . '.gz')) { unlink($pharFile . '.gz'); } // create phar $p = new Phar($pharFile); // creating our library using whole directory $p->buildFromDirectory('src/'); // pointing main file which requires all classes $p->setDefaultStub('index.php', '/index.php'); // plus - compressing it into gzip $p->compress(Phar::GZ); echo "$pharFile successfully created"; ?>উপরের স্ক্রিপ্ট কমান্ড লাইন থেকে রান করুন—
php create-phar.php
এটি ওয়ার্কিং ডিরেক্টরিতে app.phar তৈরি করবে। phar আর্কাইভ রান করতে নিচের কমান্ড ব্যবহার করুন—
php app.phar
phar:// র্যাপার ব্যবহার
<?php echo file_get_contents('phar://app.phar/index.php'); ?>এটি index.php ফাইলটির কন্টেন্ট দেখাবে।