Ubuntu 20.04 LTS پر پی ایچ پی کمپوزر کو انسٹال اور استعمال کرنے کا طریقہ

کمپوزر کو تمام انحصارات کا انتظام کرنے کی اجازت دے کر اپنے پی ایچ پی پروجیکٹ کو آسانی سے تحریر کریں۔

کمپوزر پی ایچ پی کے لیے انحصار کے انتظام کا ٹول ہے۔ یہ روایتی پیکیج مینیجر سے مختلف ہے جیسے مناسب اور ڈی این ایف، اس طرح کہ یہ پیکیجز اور لائبریریوں کو عالمی سطح پر سسٹم وائیڈ لیول پر انسٹال نہیں کرتا ہے بلکہ ہر پروجیکٹ کے لیے انہیں الگ سے ہینڈل کرتا ہے۔ اس طرح یہ انحصار مینیجر ہے نہ کہ پیکیج مینیجر۔

بالکل اسی طرح جیسے ایک میوزک کمپوزر آلات کا ایک گروپ لیتا ہے اور انہیں کنسرٹ میں بے عیب طریقے سے کام کرنے کا بندوبست کرتا ہے، پی ایچ پی کے لیے کمپوزر لائبریریوں اور فریم ورکس کا ایک گروپ لیتا ہے، انہیں مل کر کام کرنے کے لیے پیکج کرتا ہے اور ایک ٹھوس بنیاد بناتا ہے جس پر پی ایچ پی پروجیکٹ ہو سکتا ہے۔ پر مشتمل

شرطیں

آپ کو بغیر روٹ والے Ubuntu 20.04 سسٹم تک رسائی کی ضرورت ہے۔ sudo صارف اکاؤنٹ. مزید برآں، آپ کو کمپوزر کے لیے کچھ انحصار انسٹال کرنے کی ضرورت ہے، جس میں شامل ہیں۔ php-cli اپنے ٹرمینل میں پی ایچ پی اسکرپٹ چلانے کے لیے، ان زپ کمپوزر کو ڈاؤن لوڈ کردہ پیکجز نکالنے میں مدد کرنے کے لیے اور curl کمپوزر انسٹالیشن اسکرپٹ ڈاؤن لوڈ کرنے کے لیے

تمام مطلوبہ پیکجز کو انسٹال کرنے کے لیے، اپ ڈیٹ کمانڈ چلا کر اوبنٹو پیکیج لسٹ کو اپ ڈیٹ کریں:

sudo apt اپ ڈیٹ

پھر انسٹال کریں۔ php-cli, ان زپ اور curl درج ذیل کمانڈ کا استعمال کرتے ہوئے:

sudo apt php-cli unzip curl انسٹال کریں۔

آپ کو انسٹالیشن کی تصدیق کرنے کے لیے کہا جائے گا، دبائیں۔ Y پھر انٹر کو دبائیں۔ تمام شرائط کو پورا کرنے کے بعد، آپ کمپوزر کو انسٹال کرنا جاری رکھ سکتے ہیں۔

کمپوزر ڈاؤن لوڈ اور انسٹال کریں۔

کمپوزر آپ کی مشین پر کمانڈ لائن سے ڈاؤن لوڈ اور انسٹال کرنے کے لیے ایک صاف پی ایچ پی اسکرپٹ پیش کرتا ہے۔ ہمیں استعمال کرنے کی ضرورت ہے۔ curl اس اسکرپٹ کو ڈاؤن لوڈ کرنے کے لیے، حفاظتی وجوہات کی بنا پر اس کی صداقت کی تصدیق کریں اور پھر کمپوزر کو انسٹال کرنے کے لیے اس پر عمل کریں۔

یقینی بنائیں کہ آپ کا ٹرمینل ہوم ڈائریکٹری میں کھلا ہے اور پھر انسٹالیشن اسکرپٹ استعمال کرکے ڈاؤن لوڈ کریں۔ curl:

cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php

اس کے بعد، ہمیں یہ تصدیق کرنی ہوگی کہ ہم نے جو انسٹالیشن اسکرپٹ ڈاؤن لوڈ کیا ہے وہ حقیقی ہے اس کے SHA-384 ہیش کو Composer Public Key/ Checksums صفحہ پر موجود ایک سے ملا کر۔ ایسا کرنے کے لیے، کمپوزر پبلک کی پیج سے SHA-384 ہیش حاصل کریں اور اسے شیل متغیر میں اسٹور کریں۔

Hash=`curl -sS //composer.github.io/installer.sig`

پھر تصدیق کریں کہ آپ نے کامیابی کے ساتھ ہیش کو چلا کر متغیر میں حاصل کر لیا ہے اور محفوظ کر لیا ہے:

echo $Hash

آپ کو ٹرمینل سے کچھ بے ترتیب سٹرنگ کا آؤٹ پٹ ملنا چاہئے جیسے:

آؤٹ پٹ: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a

اب، انسٹالیشن اسکرپٹ کی صداقت کی تصدیق کے لیے کمپوزر کے فراہم کردہ درج ذیل پی ایچ پی کوڈ کو چلائیں۔

php -r "اگر (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Installer verified'; } else { echo 'Installer کرپٹ'؛ unlink('composer-setup) .php'); } echo PHP_EOL;"
آؤٹ پٹ: انسٹالر کی تصدیق ہو گئی۔

اگر آپ کو کوئی اور آؤٹ پٹ نظر آتا ہے جیسے انسٹالر کرپٹ، تب آپ کو معلوم ہوگا کہ اسکرپٹ خراب ہے اور اسے چلانا محفوظ نہیں ہے۔ کرل کا استعمال کرتے ہوئے اسکرپٹ کو دوبارہ ڈاؤن لوڈ کریں، پھر انسٹالیشن اسکرپٹ کی تصدیق کرنے کے لیے پی ایچ پی کوڈ کو ٹرمینل میں دوبارہ لگائیں۔

جب آپ انسٹالر کی کامیابی سے تصدیق کر لیتے ہیں تو آپ انسٹالیشن جاری رکھ سکتے ہیں۔ آپ کسی ایک پروجیکٹ کے لیے Install the Composer کو عالمی سطح پر یا مقامی طور پر انسٹال کر سکتے ہیں۔

عالمی سطح پر کمپوزر انسٹال کریں۔

کمپوزر کو عالمی سطح پر سسٹم وائیڈ کمانڈ کے نام سے انسٹال کرنا کمپوزر، درج ذیل کمانڈ کو چلائیں:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

کمپوزر میں انسٹال کیا جائے گا۔ /usr/local/bin آپ کے اوبنٹو 20.04 سسٹم پر ڈائرکٹری اور آپ کو آؤٹ پٹ نظر آئے گا جیسے:

آؤٹ پٹ: کمپوزر ڈاؤن لوڈنگ استعمال کرنے کے لیے تمام ترتیبات درست ہیں... کمپوزر (ورژن 1.10.7) کامیابی سے انسٹال ہوا: /usr/local/bin/composer اسے استعمال کریں: php /usr/local/bin/composer 

تصدیق کریں کہ کمپوزر درست طریقے سے انسٹال ہوا ہے اور چلا کر فعال ہے:

کمپوزر
آؤٹ پٹ: ______/ ____/___ ____ ____ ____ ________ _____ //__ \/ __ `__ \/ __ \/ ___/ _ ___/ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ کمپوزر ورژن 1.10.7 2020-06- 03 10:03:56 استعمال: کمانڈ [اختیارات] [دلائل] 

آپ نے اپنے Ubuntu 20.04 سسٹم پر کمپوزر کامیابی سے انسٹال کر لیا ہے۔ اب آپ اپنے پی ایچ پی پروجیکٹس میں انحصار کو منظم کرنے، اپ ڈیٹ کرنے اور انسٹال کرنے کے لیے کمپوزر کا استعمال شروع کر سکتے ہیں۔

مقامی طور پر کمپوزر انسٹال کرنا

کمپوزر کو مقامی طور پر انسٹال کرنا مفید ہے جب آپ کو سسٹم وائیڈ لیول پر اسے انسٹال کرنے کی اجازت نہ ہو یا اگر آپ کمپوزر صرف ایک پروجیکٹ کے لیے چاہتے ہیں۔ کمپوزر انسٹال کرنے کے لیے مقامی طور پر چلائیں:

php composer-setup.php

مندرجہ بالا کمانڈ آپ کی موجودہ ڈائرکٹری میں ایک نئی فائل بنائے گی۔ composer.phar. کمپوزر کی خصوصیات کو استعمال کرنے کے لیے آپ کو اس فائل کو پروجیکٹ روٹ فولڈر میں منتقل کرنے کی ضرورت ہوگی۔ یہ فائل نیچے دی گئی کمانڈ کا استعمال کرتے ہوئے چلائی جا سکتی ہے۔

php composer.phar

کمپوزر کی بنیادی باتیں

اب، جب کہ آپ نے اپنی اوبنٹو 20.04 مشین پر کمپوزر انسٹال کر رکھا ہے، آئیے کمپوزر کی کچھ بنیادی باتیں دیکھیں۔ کمپوزر کا مقصد آسانی سے انسٹالیشن اور انحصار کو اپ ڈیٹ کرنا ہے اور ایسا کرنے کے لیے یہ پروجیکٹ روٹ ڈائرکٹری میں بہت سی فائلیں بناتا ہے۔ آئیے انحصار کو منظم کرنے کے لیے کمپوزر کا استعمال کرتے ہوئے پروجیکٹ کے ڈائرکٹری ڈھانچے کو دیکھتے ہیں۔

کمپوزر پروجیکٹ کی جڑ کی ساخت:پروجیکٹ روٹ/ ├── composer.json ├── composer.lock ├── Project.php ├── composer.phar *صرف اس صورت میں جب آپ نے کمپوزر کو مقامی طور پر └── انسٹال کیا ہو۔ فروش ├── autoload.php ├── کمپوزر │ ├── ClassLoader.php │ ├── لائسنس │ ├── autoload_classmap.php │ ├── ..... ├── ...... 
  • دی composer.json پروجیکٹ روٹ ڈائرکٹری میں موجود فائل پروجیکٹ کے لیے درکار انحصار (پیکیجز) کی تمام معلومات کو اسٹور کرتی ہے۔
  • دی composer.lock ان پیکجوں کے بارے میں معلومات رکھتا ہے جو پروجیکٹ کے لیے بند ورژن ہیں۔
  • فروش وہ ڈائرکٹری ہے جہاں تمام پیکجز کو محفوظ کیا جاتا ہے، اس میں کچھ پی ایچ پی اسکرپٹ بھی ہوتے ہیں جیسے autoload.php، جو وینڈر ڈائرکٹری میں پیکجوں کو خودکار طور پر شامل کرنے کی سہولت فراہم کرتا ہے۔
  • آخر میں، اگر آپ نے مقامی طور پر کمپوزر انسٹال کیا ہے تو آپ کے پاس ہونا ضروری ہے۔ composer.phar پیکجوں کو انسٹال کرنے کے لیے پروجیکٹ ڈائرکٹری میں فائل کریں۔

جب آپ استعمال کرتے ہیں تو یہ تمام فائلیں بنتی ہیں۔ کمپوزر یا php composer.phar پہلی بار اپنے پروجیکٹ کے لیے پیکجز کو ڈاؤن لوڈ اور انسٹال کرنے کا حکم۔ تو آئیے ڈیمو پروجیکٹ بنا کر کمپوزر کے کام کو دیکھیں۔

کمپوزر کا استعمال کرتے ہوئے اپنا پہلا پروجیکٹ بنانا

پہلا قدم اپنے پروجیکٹ کے لیے روٹ ڈائرکٹری بنانا ہے، اس لیے اس کے ساتھ ایک بنائیں mkdir کمانڈ اور استعمال کرکے اس پر تشریف لے جائیں۔ سی ڈی کمانڈ:

mkdir ~/ComposerDemo cd ~/ComposerDemo

اب، ہمیں اپنے ڈیمو پروجیکٹ کو بنانے کے لیے درکار پیکجز/لائبریریوں کو تلاش کرنے اور انسٹال کرنے کی ضرورت ہے۔ پیکجسٹ ایک اہم کمپوزر ذخیرہ ہے جو عوامی طور پر دستیاب تمام پی ایچ پی پیکجوں کی فہرست دیتا ہے جو کمپوزر کے ساتھ انسٹال کیے جا سکتے ہیں۔

اس مثال میں، ہم ایک پی ایچ پی پیکیج استعمال کریں گے جسے کہتے ہیں۔ cakephp/chronosیہ تاریخ اور وقت کے لیے ایک سادہ API توسیع ہے۔ اس طرح ایک نیا کمپوزر پروجیکٹ بنانے اور Chronos پیکیج کو انسٹال کرنے کے لیے درج ذیل کمانڈ کو چلائیں:

کمپوزر کو cakephp/chronos کی ضرورت ہوتی ہے۔
آؤٹ پٹ: cakephp/chronos ./composer.json کے لیے ورژن ^2.0 کا استعمال کرتے ہوئے بنایا گیا ہے پیکیج کی معلومات کے ساتھ کمپوزر ریپوزٹریز لوڈ کرنا انحصار کو اپ ڈیٹ کرنا (بشمول ضرورت-dev) پیکیج آپریشنز: 1 انسٹال، 0 اپ ڈیٹس، 0 ہٹانا - کیک پی ایچ پی/کرونوس انسٹال کرنا (2.0.5) ) : ڈاؤن لوڈ کرنا (100%) لاک فائل لکھنا آٹو لوڈ فائلز بنانا 

دی ضرورت ہے آپشن آپ کے مطلوبہ پیکیج کو بازیافت اور انسٹال کرتا ہے اور فائلوں اور ڈائریکٹریوں کو تیار کرتا ہے جیسے composer.json, composer.lock اور فروش پروجیکٹ روٹ ڈائرکٹری میں۔ آپ اسے دیکھیں گے۔ cakephp/chronos میں شامل کیا جاتا ہے۔ composer.json اگر آپ درج ذیل کمانڈ چلاتے ہیں:

cat composer.json
آؤٹ پٹ: { "ضرورت": { "cakephp/chronos": "^2.0" } } 

اس کے بعد آئیے اپنے ڈیمو پروجیکٹ میں Chronos کا استعمال کریں، کھولیں اور ایک PHP فائل بنائیں جس کو کہتے ہیں۔ demo.php استعمال کرتے ہوئے نینو:

nano demo.php

پھر درج ذیل کوڈ کو شامل کریں۔ demo.php، دوسری لائن جس میں شامل ہے۔ vendor/autoload.php ایک کمپوزر فائل ہے جو خود بخود تمام پیکجز اور لائبریریوں کو لوڈ کرتی ہے جو پروجیکٹ کے لیے انسٹال ہیں۔ دبانے سے فائل کو محفوظ کریں۔ Ctrl+O اور پھر دبا کر نینو ایڈیٹر سے باہر نکلیں۔ Ctrl+X.

کو پھانسی دیں۔ demo.php درج ذیل کمانڈ کو چلا کر:

php demo.php
آؤٹ پٹ: ابھی: 23-06-2020 17:07:45

مستقبل میں جب آپ کو اپنے پروجیکٹ کے پیکجز اور لائبریریوں کو اپ ڈیٹ کرنے کی ضرورت ہو، تو بس درج ذیل کمانڈ کو چلائیں:

کمپوزر اپ ڈیٹ

مندرجہ بالا کمانڈ انسٹال شدہ پیکجوں کے نئے ورژن کی جانچ کرے گی اور پروجیکٹ اور اس کی ایک دوسرے پر منحصر لائبریریوں کو توڑے بغیر انہیں محفوظ طریقے سے اپ ڈیٹ کرے گی۔

ہم نے Ubuntu 20.04 مشین پر کمپوزر کو انسٹال کرنے کا طریقہ دیکھا ہے اور کمپوزر کے بارے میں آپ کو جاننے کی بنیادی باتوں کو دیکھا ہے۔ اب آپ پیکجسٹ پر تلاش کرکے مطلوبہ پیکیجز شامل کرکے نئے پروجیکٹس بنانے کی کوشش کر سکتے ہیں۔ اگر آپ کمپوزر اور اس کے آپشن کے بارے میں مزید جاننا چاہتے ہیں تو کمپوزر کے آن لائن دستاویزی صفحہ پر جائیں۔