Composer یک مدیر dependency برای PHP است (همانطور که npm برای Node.js یا pip برای Python است). Composer تمام بسته های PHP مورد نیاز را که پروژه شما به آن بستگی دارد را جمع می کند و آنها را برای شما مدیریت می کند. در تمامی فریمورک ها و پلتفرم های مدرن PHP مانند Laravel ، Symfony ، Drupal و Magento 2 استفاده می شود. در این مقاله ما با ما همراه باشید تا شما عزیزان را با نحوه نصب Composer در سیستم های Debian 10 آشنا کنیم. همچنین نحوه استفاده از Composer برای ایجاد و مدیریت پروژه های PHP را توضیح خواهیم داد.
قبل از نصب Composer ، مطمئن شوید که همه بسته های لازم را بر روی سیستم Debian خود نصب کرده اید:
sudo apt update
sudo apt install wget php-cli php-zip unzip
Composer نصب کننده ای را که به زبان PHP نوشته شده ارائه می دهد که ما برای نصب Composer از آن استفاده خواهیم کرد. از wget برای دانلود استفاده کنید:
wget -O composer-setup.php https://getcomposer.org/installer
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 استفاده کنید.
sudo php composer-setup.php --install-dir=/path/to/project
با این کار فایلی به نام composer.phar دانلود می شود. برای استفاده از Composer به دایرکتوری پروژه بروید و php composer.phar را اجرا کنید. هنگامی که یک ورژن جدید Composer در دسترس است ، می توانید نصب را با استفاده از دستور زیر به روز کنید:
sudo composer self-update
اکنون که Composer را روی سیستم دبیان خود نصب کرده اید ، نحوه ایجاد یک پروژه PHP را به شما نشان خواهیم داد. اولین قدم ایجاد دایرکتوری root پروژه و انتقال به آن و نگهداری فایل composer.json است. این فایل پروژه PHP شما را توصیف می کند. دستورات زیر را برای ایجاد دایرکتوری پروژه اجرا کنید و با استفاده از آن به آن سوئیچ کنید:
mkdir ~/my-first-composer-project
cd ~/my-first-composer-project
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
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 ، به صفحه اسناد رسمی مراجعه کنید.
امیدواریم مطالب مورد پسند بوده و از آن بهره لازم را برده باشید. خوشحال میشویم نظرات و سوالات خود را در قسمت دیدگاه به اشتراک بگذارید و ما را در شتابان هاست همراهی کنید.😊