परिचय
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 क्लास के ऑब्जेक्ट का उपयोग करके buildFromDirectory() मेथड के साथ src फ़ोल्डर में फाइलों को समाहित करने वाला phar आर्काइव बनाएं। index.php को setDefaultStub के रूप में निर्दिष्ट करें:
<?php
// php.ini सेटिंग phar.readonly को 0 पर सेट करना होगा
$pharFile = 'app.phar';
// क्लीनअप
if (file_exists($pharFile)) { unlink($pharFile); }
if (file_exists($pharFile . '.gz')) { unlink($pharFile . '.gz'); }
// phar बनाएं
$p = new Phar($pharFile);
// पूरी डायरेक्टरी का उपयोग करके हमारी लाइब्रेरी बनाएं
$p->buildFromDirectory('src/');
// मुख्य फ़ाइल को इंगित करें जिसमें सभी क्लास की आवश्यकता होती है
$p->setDefaultStub('index.php', '/index.php');
// प्लस - इसे 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 फ़ाइल की सामग्री प्रदर्शित करेगा।
मुख्य लाभ: PHAR फाइलों को सीधे निष्पादित किया जा सकता है (php app.phar), स्व-निहित होते हैं, और वर्जनिंग/अपडेट का समर्थन करते हैं।