نماد سایت وبلاگ شتابان هاست

نحوه نصب و استفاده از PHP Composer در Debian 10

نحوه نصب و استفاده از PHP Composer در Debian 10

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

نصب Composer در Debian :

قبل از نصب Composer ، مطمئن شوید که همه بسته های لازم را بر روی سیستم Debian خود نصب کرده اید:

sudo apt updatesudo apt install wget php-cli php-zip unzip

Composer نصب کننده ای را که به زبان PHP نوشته شده ارائه می دهد که ما برای نصب Composer از آن استفاده خواهیم کرد. از wget برای دانلود استفاده کنید:

wget -O composer-setup.php https://getcomposer.org/installer
دستور بالا فایل را به عنوان composer-setup.php در دایرکتوری کاری فعلی ذخیره می کند. Composer یک برنامه CLI با فایل واحد است که می تواند به صورت سراسری یا به عنوان بخشی از پروژه نصب شود. نصب جهانی به امتیازات sudo نیاز دارد.
  • برای نصب Composer به صورت سراسری به عنوان یک دستور در سراسر سیستم که برای همه کاربران در دسترس خواهد بود ، به سادگی فایل را در دایرکتوری موجود در سیستم PATH قرار دهید. دستور زیر Composer را در دایرکتوری /usr/local/bin نصب می کند:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer
Downloading...

Composer (version 1.10.10) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

اکنون می توانید با اجرای composer در ترمینال خود از Composer استفاده کنید.

  • برای نصب composer به صورت locally ، فایل را در دایرکتوری root پروژه خود دانلود کنید:
sudo php composer-setup.php --install-dir=/path/to/project

با این کار فایلی به نام composer.phar دانلود می شود. برای استفاده از Composer به دایرکتوری پروژه بروید و php composer.phar را اجرا کنید. هنگامی که یک ورژن جدید Composer در دسترس است ، می توانید نصب را با استفاده از دستور زیر به روز کنید:

sudo composer self-update

شروع کار با Composer :

اکنون که Composer را روی سیستم دبیان خود نصب کرده اید  ، نحوه ایجاد یک پروژه PHP را به شما نشان خواهیم داد. اولین قدم ایجاد دایرکتوری root پروژه و انتقال به آن و نگهداری فایل composer.json است. این فایل پروژه PHP شما را توصیف می کند. دستورات زیر را برای ایجاد دایرکتوری پروژه اجرا کنید و با استفاده از آن به آن سوئیچ کنید:

mkdir ~/my-first-composer-projectcd ~/my-first-composer-project
در مرحله بعد ، یک فایل composer.json جدید را با استفاده از دستور composer need <package name> مقداردهی اولیه کنید و بسته ای را که می خواهید دانلود کنید را ، مشخص کنید. در این مثال ، ما یک برنامه کاربردی نمونه ایجاد می کنیم که زمان فعلی را با استفاده از بسته ای به نام کربن نمایش می دهد. دستور زیر را برای مقداردهی اولیه فایل composer.json جدید و نصب پکیج کربن اجرا کنید:
composer require nesbot/carbon
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 5 installs, 0 updates, 0 removals
  - Installing symfony/translation-contracts (v2.1.3): Downloading (100%)         
  - Installing symfony/polyfill-php80 (v1.18.1): Downloading (100%)         
  - Installing symfony/polyfill-mbstring (v1.18.1): Downloading (100%)         
  - Installing symfony/translation (v5.1.3): Downloading (100%)         
  - Installing nesbot/carbon (2.38.0): 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 را ایجاد می کند و کربن و تمام وابستگی های آن را دانلود و نصب می کند. اگر دایرکتوری پروژه خود را با ls لیست کنید ، می بینید که شامل دو فایل composer.json و composer.lock و یک دایرکتوری vendor است.

ls -l
-rw-r--r-- 1 linuxize users   60 Aug 17 21:02 composer.json
-rw-r--r-- 1 linuxize users 6851 Aug 17 21:02 composer.lock
drwxr-xr-x 5 linuxize users 4096 Aug 17 21:02 vendor
  • vendor – دایرکتوری که وابستگی های پروژه در آن ذخیره می شود.
  • composer.lock – یک فایل حاوی لیستی از تمام بسته های نصب شده از جمله ورژن بسته ها.
  • composer.json – فایلی که پروژه PHP و تمام وابستگی های PHP را توصیف می کند.

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

<?php

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

use Carbon\Carbon;

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

بیایید کد را خط به خط تجزیه و تحلیل کنیم. در خط اول بعد از باز شدن تگ php ، فایل vendor/autoload.php را که به طور خودکار توسط Composer تولید شده است ، قرار دهید. این فایل تمام کتابخانه های مورد نیاز را به صورت خودکار دانلود می کند. در مرحله بعد ، Carbon\Carbon را به عنوان Carbon نامگذاری کنید و در خط آخر ، زمان فعلی را با استفاده از روش Carbon now نمایش دهید. با تایپ کردن ، اسکریپت را اجرا کنید:

php testing.php

خروجی باید چیزی شبیه دستور زیر باشد:

Now: 2020-08-17 21:08:45

سپس ، اگر نیاز به به روز رسانی بسته های پروژه دارید ، دستور زیر را وارد کنید:

composer update

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

جمع بندی :

ما به شما نشان دادیم که چگونه Composer را روی Debian 10 نصب کنید و چگونه از آن برای ایجاد یک پروژه پایه PHP استفاده کنید. برای کسب اطلاعات بیشتر در مورد Composer ، به صفحه اسناد رسمی مراجعه کنید.

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

خروج از نسخه موبایل