কম্পোজারকে সমস্ত নির্ভরতা পরিচালনা করতে দিয়ে আপনার পিএইচপি প্রকল্পটি সহজে রচনা করুন
কম্পোজার হল পিএইচপি-র জন্য নির্ভরতা ব্যবস্থাপনার টুল। এটি যেমন ঐতিহ্যগত প্যাকেজ ম্যানেজার থেকে পৃথক উপযুক্ত
এবং dnf
, এমনভাবে যাতে এটি বিশ্বব্যাপী প্যাকেজ এবং লাইব্রেরিগুলিকে সিস্টেম-ব্যাপী স্তরে ইনস্টল করে না বরং প্রতিটি প্রকল্পের জন্য আলাদাভাবে পরিচালনা করে। সুতরাং এটি একটি নির্ভরতা ম্যানেজার এবং প্যাকেজ ম্যানেজার নয়।
অনেকটা যেমন একজন মিউজিক কম্পোজার একগুচ্ছ যন্ত্র নেন এবং একটি কনসার্টে নিখুঁতভাবে কাজ করার জন্য সেগুলিকে সাজান, পিএইচপি-এর জন্য কম্পোজার একগুচ্ছ লাইব্রেরি এবং ফ্রেমওয়ার্ক নেয়, তাদের একসঙ্গে কাজ করার জন্য প্যাকেজ করে এবং একটি শক্ত ভিত্তি তৈরি করে যার উপর একটি PHP প্রকল্প হতে পারে। রচিত
পূর্বশর্ত
আপনার একটি অ-রুট সহ একটি উবুন্টু 20.04 সিস্টেমে অ্যাক্সেসের প্রয়োজন sudo
ব্যবহারকারীর অ্যাকাউন্ট. অতিরিক্তভাবে, আপনাকে কম্পোজারের জন্য কিছু নির্ভরতা ইনস্টল করতে হবে, যার মধ্যে রয়েছে php-cli
আপনার টার্মিনালে পিএইচপি স্ক্রিপ্ট চালানোর জন্য, আনজিপ
কম্পোজারকে ডাউনলোড করা প্যাকেজ বের করতে সাহায্য করতে এবং কার্ল
কম্পোজার ইনস্টলেশন স্ক্রিপ্ট ডাউনলোড করতে
সমস্ত প্রয়োজনীয় প্যাকেজ ইনস্টল করতে, আপডেট কমান্ডটি চালিয়ে উবুন্টু প্যাকেজ তালিকা আপডেট করুন:
sudo apt আপডেট
তারপর ইন্সটল করুন php-cli
, আনজিপ
এবং কার্ল
নিম্নলিখিত কমান্ড ব্যবহার করে:
sudo apt php-cli আনজিপ কার্ল ইনস্টল করুন
আপনাকে ইনস্টলেশন নিশ্চিত করতে বলা হবে, টিপুন Y
তারপর এন্টার চাপুন। আপনি সমস্ত পূর্বশর্তগুলি পূরণ করার পরে, আপনি কম্পোজার ইনস্টল করা চালিয়ে যেতে পারেন।
কম্পোজার ডাউনলোড এবং ইনস্টল করুন
কম্পোজার কমান্ড লাইন থেকে আপনার মেশিনে ডাউনলোড এবং ইনস্টল করার জন্য একটি ঝরঝরে PHP স্ক্রিপ্ট অফার করে। আমাদের ব্যবহার করতে হবে কার্ল
এই স্ক্রিপ্টটি ডাউনলোড করতে, নিরাপত্তার কারণে এর সত্যতা যাচাই করুন এবং তারপর কম্পোজার ইনস্টল করতে এটি চালান।
নিশ্চিত করুন যে আপনার টার্মিনাল হোম ডিরেক্টরিতে খোলা আছে এবং তারপর ব্যবহার করে ইনস্টলেশন স্ক্রিপ্ট ডাউনলোড করুন কার্ল
:
cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php
এর পরে, আমরা যে ইনস্টলেশন স্ক্রিপ্টটি ডাউনলোড করেছি সেটি আসল কিনা তা SHA-384 হ্যাশের সাথে কম্পোজার পাবলিক কী/চেকসামস পৃষ্ঠায় পাওয়া একটির সাথে মিলে যাচাই করতে হবে। এটি করতে, কম্পোজার পাবলিক কী পৃষ্ঠা থেকে SHA-384 হ্যাশ প্রাপ্ত করুন এবং এটি একটি শেল ভেরিয়েবলে সংরক্ষণ করুন।
হ্যাশ=`curl -sS //composer.github.io/installer.sig`
তারপর যাচাই করুন যে আপনি সফলভাবে রান করে ভেরিয়েবলে হ্যাশ পেয়েছেন এবং সংরক্ষণ করেছেন:
প্রতিধ্বনি $হ্যাশ
আপনার কিছু র্যান্ডম স্ট্রিং এর আউটপুট পাওয়া উচিত যেমন টার্মিনাল থেকে:
আউটপুট: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
এখন, ইনস্টলেশন স্ক্রিপ্টের সত্যতা যাচাই করতে কম্পোজার দ্বারা প্রদত্ত নিম্নলিখিত পিএইচপি কোডটি চালান:
php -r "যদি (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'ইনস্টলার যাচাইকৃত'; } else { echo 'Installer corrupt'; unlink('composer-setup) .php'); } ইকো 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 ব্যবহার: কমান্ড [বিকল্প] [আর্গুমেন্টস]
আপনি আপনার উবুন্টু 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 ~/কম্পোজারডেমো সিডি ~/কম্পোজারডেমো
এখন, আমাদের ডেমো প্রকল্প তৈরি করার জন্য প্রয়োজনীয় প্যাকেজ/লাইব্রেরিগুলি খুঁজে বের করতে হবে এবং ইনস্টল করতে হবে। প্যাকেজিস্ট হল প্রধান কম্পোজার রিপোজিটরি যা সর্বজনীনভাবে উপলব্ধ পিএইচপি প্যাকেজগুলির তালিকা করে যা কম্পোজারের সাথে ইনস্টল করা যেতে পারে।
এই উদাহরণে, আমরা একটি পিএইচপি প্যাকেজ ব্যবহার করব যাকে বলা হয় cakephp/chronos
, এটি তারিখ এবং সময়ের জন্য একটি সাধারণ API এক্সটেনশন। এইভাবে একটি নতুন কম্পোজার প্রকল্প তৈরি করতে এবং Chronos প্যাকেজ ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:
কম্পোজার কেকপিএইচপি/ক্রোনোস প্রয়োজন
আউটপুট: cakephp/chronos ./composer.json-এর জন্য ^2.0 সংস্করণ ব্যবহার করে প্যাকেজ তথ্য সহ কম্পোজার রিপোজিটরি লোড করা হচ্ছে (প্রয়োজন-dev সহ) প্যাকেজ অপারেশনগুলি আপডেট করা: 1 ইনস্টল, 0 আপডেট, 0 অপসারণ - cakephp/chronos ইনস্টল করা হচ্ছে (2.0.5) ): ডাউনলোড হচ্ছে (100%) লক ফাইল লেখা অটোলোড ফাইল তৈরি করা হচ্ছে
দ্য প্রয়োজন
অপশনটি আপনার পছন্দের প্যাকেজটি আনে এবং ইনস্টল করে এবং ফাইল এবং ডিরেক্টরি তৈরি করে যেমন composer.json
, composer.lock
এবং বিক্রেতা
প্রকল্প রুট ডিরেক্টরিতে। আপনি সেটা দেখতে পাবেন cakephp/chronos
যোগ করা হয় composer.json
আপনি যদি নিম্নলিখিত কমান্ডটি চালান:
cat composer.json
আউটপুট: { "প্রয়োজন": { "cakephp/chronos": "^2.0" } }
এর পরে আমাদের ডেমো প্রজেক্টে Chronos ব্যবহার করা যাক, একটি পিএইচপি ফাইল খুলুন এবং তৈরি করুন demo.php
ব্যবহার ন্যানো
:
nano demo.php
তারপর নিম্নলিখিত কোড যোগ করুন demo.php
, দ্বিতীয় লাইন যা অন্তর্ভুক্ত vendor/autoload.php
একটি কম্পোজার ফাইল যা প্রজেক্টের জন্য ইনস্টল করা সমস্ত প্যাকেজ এবং লাইব্রেরি স্বয়ংক্রিয়ভাবে লোড করে। টিপে ফাইলটি সংরক্ষণ করুন Ctrl+O
এবং তারপর টিপে ন্যানো সম্পাদক থেকে প্রস্থান করুন Ctrl+X
.
চালান demo.php
নিম্নলিখিত কমান্ড চালানোর মাধ্যমে:
php demo.php
আউটপুট: এখন: 2020-06-23 17:07:45
ভবিষ্যতে যখন আপনাকে আপনার প্রকল্পের প্যাকেজ এবং লাইব্রেরি আপডেট করতে হবে, কেবল নিম্নলিখিত কমান্ডটি চালান:
সুরকার আপডেট
উপরের কমান্ডটি ইনস্টল করা প্যাকেজগুলির নতুন সংস্করণের জন্য পরীক্ষা করবে এবং প্রকল্প এবং এর আন্তঃনির্ভর লাইব্রেরিগুলি না ভেঙে নিরাপদে আপডেট করবে।
আমরা উবুন্টু 20.04 মেশিনে কীভাবে কম্পোজার ইনস্টল করতে হয় তা দেখেছি এবং কম্পোজার সম্পর্কে আপনার যে মৌলিক বিষয়গুলি জানতে হবে তা দেখেছি। আপনি এখন প্যাকেজিস্টে অনুসন্ধান করে প্রয়োজনীয় প্যাকেজ যোগ করে নতুন প্রকল্প তৈরি করার চেষ্টা করতে পারেন। আপনি যদি কম্পোজার এবং এর বিকল্প সম্পর্কে আরও জানতে চান তাহলে কম্পোজার অনলাইন ডকুমেন্টেশন পৃষ্ঠায় যান।