نحوه نصب و استفاده از PHP Composer در CentOS 8

نحوه نصب و استفاده از PHP Composer در CentOS 8

سعیده مهاجری

Composer ابزاری برای مدیریت وابستگی در پروژه‌های PHP است (همانطور که npm به Node.js یا pip به Python است). به زبان ساده تر گاهی اوقات که یک پروژه را استارت میزنید جدای اینکه از خود زبان برنامه نویسی php استفاده میکنید ، نیاز می باشد از پکیج و کتابخانه های سایر برنامه نویسان که به صورت اپن سورس عرضه شده ، برای سرعت در توسعه پروژه خود استفاده کنید. Composer تمام بسته های PHP مورد نیاز خود را که پروژه شما به آن بستگی دارد جمع کرده و آنها را برای شما مدیریت می کند. در همه چارچوب ها و سیستم عامل های مدرن PHP مانند Laravel ، Symfony ، Drupal و Magento 2 استفاده می شود. اگر عجله دارید و نمی خواهید صحت فایل را تأیید کنید ، میتوانید به بخش نصب سریع Composer بروید. با ما همراه باشید تا در این مقاله شما عزیزان را با نحوه نصب و استفاده از Composer در CentOS 8 آشنا کنیم.

پیش نیازها :

قبل از ادامه اطمینان حاصل کنید که شرایط زیر را داشته اید:

  • به عنوان یک کاربر با امتیازات sudo وارد سیستم شوید.
  • PHP را روی سیستم CentOS 8 خود نصب کنید.

نصب Composer در CentOS :

مراحل زیر را برای نصب Composer در CentOS 8 انجام دهید.

۱_ بسته PHP CLI (رابط خط فرمان) و سایر وابستگی ها را با موارد زیر نصب کنید:

sudo dnf install php-cli php-json php-zip wget unzip

۲_ پس از نصب PHP CLI ، اسکریپت نصب کننده Composer را دانلود کنید:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

دستور بالا فایلی به نام composer-setup.php را در فهرست کار فعلی دانلود می کند.

۳_ با مقایسه SHA-384 hash فایل با hash که در صفحه کلیدهای عمومی / امضاء Composer موجود است ، یکپارچگی داده ها را تأیید کنید. دستور wget زیر امضای آخرین نصب کننده Composer را از صفحه Composer’s Github دانلود کرده و آن را در متغیری به نام HASH ذخیره می کند:

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"

برای تأیید خراب نبودن اسکریپت نصب ، دستور زیر را اجرا کنید:

php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

اگر hash ها مطابقت داشته باشند ، پیام زیر نشان داده می شود:

Installer verified

در غیر این صورت ، اگر hash ها مطابقت نداشته باشند ، Installer corrupt  می بینید. پس از تأیید صحت ، با مرحله بعدی ادامه دهید.

۴_ برای نصب Composer در دایرکتوری / usr / local / bin ، دستور زیر را اجرا کنید:

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

دستور بالا Composer را به عنوان یک دستورالعمل در کل سیستم نصب می کند و برای همه کاربران در دسترس است. خروجی چیزی شبیه به دستور زیر خواهد بود:

All settings correct for using Composer
Downloading...

Composer (version 1.10.1) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
دستور بالا Composer را به عنوان یک دستورالعمل در کل سیستم نصب می کند و برای همه کاربران در دسترس است.
۵_ با چاپ نسخه Composer ، نصب را تأیید کنید:
composer -V
Composer version 1.10.1 2020-03-13 20:34:27
در این مرحله ، شما با موفقیت Composer را روی سیستم CentOS خود نصب کرده اید و می توانید از آن استفاده کنید.

نصب سریع Composer :

۱_ PHP CLI و Zip را نصب کنید:

sudo dnf install php-cli php-json php-zip curl unzip

۲_ دانلود Composer با curl:

curl -sS https://getcomposer.org/installer |php

۳_ فایل Composer را به دایرکتوری / usr / local / bin انتقال دهید:

sudo mv composer.phar /usr/local/bin/composer

شروع با Composer :

اکنون که Composer روی سیستم CentOS شما نصب شده است ، ما به شما نحوه استفاده از Composer در یک پروژه PHP را نشان خواهیم داد. با ایجاد دایرکتوری root پروژه را شروع کنید:
mkdir ~/my-first-composer-project cd ~/my-first-composer-project

در این مثال ، ما از یک بسته PHP به نام carbon برای ایجاد یک برنامه کاربردی نمونه استفاده می کنیم که زمان فعلی را چاپ می کند. برای راه اندازی یک پروژه جدید Composer و نصب بسته carbon ، دستور زیر را اجرا کنید:

composer require nesbot/carbon
sing version ^2.32 for nesbot/carbon
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 4 installs, 0 updates, 0 removals
  - Installing symfony/translation-contracts (v2.0.1): Downloading (connecting..Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.15.0): Downloading (100%)         
  - Installing symfony/translation (v5.0.6): Downloading (100%)         
  - Installing nesbot/carbon (2.32.1): Downloading (100%)         
symfony/polyfill-mbstring suggests installing ext-mbstring (For best performance)
symfony/translation suggests installing symfony/config
symfony/translation suggests installing symfony/yaml
symfony/translation suggests installing psr/log-implementation (To use logging capability in translator)
Writing lock file
Generating autoload files
۳ packages you are using are looking for funding.
Use the `composer fund` command to find out more!

همانطور که در خروجی بالا مشاهده می کنید ، Composer فایلی به نام composer.json ایجاد می کند و carbon و تمام وابستگی های آن را دانلود می کند. اگر دایرکتوری پروژه خود را لیست کنید ، می بینید که شامل دو فایل composer.json و composer.lock و یک دایرکتوری vendor است.

ls -l
-rw-rw-r--. 1 vagrant vagrant    60 Mar 27 18:05 composer.json
-rw-rw-r--. 1 vagrant vagrant 11135 Mar 27 18:06 composer.lock
drwxrwxr-x. 6 vagrant vagrant    82 Mar 27 18:06 vendor
  • vendor دایرکتوری است که وابستگی های پروژه در آن ذخیره می شود.
  • فایل composer.lock شامل لیستی از تمام بسته های نصب شده ، از جمله نسخه های آنها است.
  • composer.json فایلی است که پروژه PHP شما ، از جمله وابستگی های PHP و سایر فراداده های دیگر را توصیف میکند.

Composer دارای قابلیت دانلود خودکار است که به شما امکان می دهد بدون نیاز به require یا include از کلاس های PHP استفاده کنید. فایلی با نام test.php ایجاد کنید و کد زیر را اضافه کنید:

<?php

require __DIR__ . '/vendor/autoload.php';

use Carbon\Carbon;

printf("Now: %s", Carbon::now());

اسکریپت را با دستور زیر اجرا کنید:

php testing.php

خروجی باید مانند دستور زیر باشد:

Now: 2020-03-27 22:12:26

بعداً ، اگر می خواهید بسته های PHP خود را به روز کنید می توانید به سادگی با اجرا دستور زیر آپدیت کنید:

composer update

دستور بالا نسخه های جدیدتر بسته های نصب شده را بررسی می کند و اگر نسخه جدیدتری پیدا شود و محدودیت نسخه با آن مشخص شده در composer.json مطابقت داشته باشد ، Composer بسته را به روز می کند.

جمع بندی :

شما یاد گرفته اید که چگونه Composer را روی دستگاه CentOS 8 خود نصب کنید. ما همچنین به شما نشان دادیم که چگونه از Composer برای ایجاد یک پروژه PHP استفاده کنید.

امیدواریم مطالب مورد پسند بوده و از آن بهره لازم را برده باشید. خوشحال میشویم نظرات و سوالات خود را در قسمت دیدگاه به اشتراک بگذارید و ما را در شتابان هاست همراهی کنید.😊

برچسب ها: دستورات لینوکس