امروز ما در مورد یکی از مهمترین ابزارها در پی اچ پی بحث خواهیم کرد: مدیریت وابستگی Composer. در این مقاله به موارد و اعتبارات موجود در Composer و نحوه نصب و استفاده از آن در توسعه روزانه پی اچ پی خواهیم پرداخت.
اگر مدتی در پی اچ پی کد زده باشید، از طریق کتابخانههای پی اچ پی میتوانید به صرفه جویی در کار و استفاده مجدد از کد کمک کنید. در گذشته افزودن کتابخانه به پی اچ پی سختتر بود که منجر به اختراع زیاد چرخ برای ویژگیهای مشترک شد. به عنوان مثال، یک لایه انتزاع بانک اطلاعاتی (DAL) برای هر نوع برنامه پی اچ پی ضروری است، اما هیچ کتابخانه یا بسته استانداردی وجود ندارد. بنابراین بسیاری از افراد به توسعه خودشان پایان دادند.
مطمئنا در آن زمان گزینههای زیادی وجود داشت. اما اضافه کردن وابستگی، پیگیری آنها و مدیریت برنامه شما در دراز مدت کار سختی بود. در اینجاست که یک مدیر وابستگی مانند کامپوزر وارد آن میشود. در حقیقت قبل از کامپوزر، یک ابزار محبوب به نام PEAR وجود داشت که برای مدیریت پسوندهای پی اچ پی و کتابخانهها استفاده میشد. اما محدودیتهای خاص خود را داشت که کامپوزر برای پرداختن به آن ساخته شد.
به طور خلاصه، ما به ابزاری احتیاج داریم که بتواند برای نصب کتابخانهها و مدیریت وابستگیهای برنامه کاربردی باشد. کامپوزر کار بزرگی انجام میدهد. این یک مدیر بسته در سطح برنامههای کاربردی برای پی اچ پی است که محبوبیت بی نظیری را بدست آورده و به یک استاندارد برای مدیریت وابستگی در برنامههای پی اچ پی تبدیل شده است.
برای اطلاعات جامعتر میتونید از دوره PHP وبسایت راکت استفاده کنید.
Composer چیست؟
کامپوزر ابزاری برای مدیریت وابستگی در پی اچ پی است و این امکان را به شما میدهد تا کتابخانههایی را که پروژه شما به آن بستگی دارد تعریف کنید و آنها را برای شما مدیریت خواهد کرد.
ذکر این نکته حائز اهمیت است که کامپوزر به شما امکان میدهد کتابخانههای لازم را بر اساس هر پروژه نصب کنید و از نسخههای مختلف یک کتابخانه در پروژههای مختلف پی اچ پی استفاده کنید. البته گزینهای برای نصب یک کتابخانه در سطح جهانی وجود دارد، اما توصیه نمیشود. اگر از npm برای نود.جی اس یا Bundler برای روبی شنیدهاید، این همان کاری است که کامپوزر برای پی اچ پی میکند.
برای نصب و استفاده از کتابخانههایی که توسط کامپوزر اداره میشود، فقط کافی است که آنها را در پروژه خود در قالب استاندارد تعریف کنید و کامپوزر بقیه را مدیریت میکند. به عنوان مثال، اگر میخواهید کتابخانه phpmailer را با استفاده از کامپوزر نصب کنید، فقط باید دستور زیر را در روت پروژه خود اجرا کنید:
$composer require phpmailer/phpmailer
این کتابخانه، phpmailer و وابستگیهای آن را در فهرست پروژههای شما نصب میکند. مهمتر از همه، این فایلها همچنین باعث ایجاد فایلهای composer.json و composer.lock میشود که برای پیگیری وابستگیهای پروژه شما استفاده میشود. بعدا در این مقاله به جزئیات بیشتر خواهیم پرداخت.
در حقیقت، کامپوزر هنگام مدیریت کتابخانههای پی اچ پی به یک استاندارد جهانی تبدیل شده است. فریمورکهای محبوب این زبان مانند Symfony ،Laravel ،Drupal و بسیاری از موارد دیگر قبلا گردش کار مبتنی بر کامپوزر را در چرخه توسعه خود اتخاذ کردهاند. در بخش بعدی نحوه نصب کامپوزر را خواهیم دید.
چگونه Composer را نصب کنیم
هنگام نصب کامپوزر، دو راه وجود دارد. میتوانید آن را بصورت محلی یا بر اساس هر پروژه یا در سطح گلوبال نصب کنید. ما آن را در سطح گلوبال نصب خواهیم کرد تا بتوان از آن در پروژههای مختلف استفاده کرد.
نحوه نصب Composer روی nix و macOS
برای سیستم های مبتنی بر nix - لینوکس و یونیکس - نصب و راهاندازی کامپوزر بلافاصله یک دستور واحد طول میکشد. پیش بروید و دستور زیر را در ترمینال خود اجرا کنید.
$curl -s https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading...
Composer (version 1.10.6) successfully installed to: /home/sajal/composer.phar
Use it: php composer.phar
و با آن کامپوزر به صورت محلی نصب میشود و شما با استفاده از دستور php composer.phar آماده استفاده از آن هستید. با این حال، ما میخواهیم آن را به صورت گلوبال نصب کنیم. بنابراین اجازه دهید با اجرای دستور زیر این کار را انجام دهیم.
$sudo mv ./composer.phar /usr/bin/composer
حال باید بتوانید از کامپوزر در سطح گلوبال استفاده کنید. پیش بروید و آن را تست کنید تا ببینید که آیا به خوبی نصب شده است یا خیر.
$composer --version
Composer version 1.10.6 2020-05-06 10:28:10
از طرف دیگر، اگر کامپوزر را به صورت محلی نصب کنید، دستور php composer.phar --version را اجرا میکنید.
بنابراین همانطور که مشاهده میکنید نصب کامپوزر در سیستمهای مبتنی بر لینوکس و یونیکس بسیار ساده است. در بخش بعدی، نحوه نصب آن بر روی سیستمهای ویندوز را خواهیم دید.
نحوه نصب Composer در ویندوز
برای کاربران ویندوز، نصب کامپوزر خیلی سادهتر است. شما فقط نیاز به نصب Composer setup و اجرای آن دارید. مراحل نصب را دنبال کنید و آخرین نسخه کامپوزر را نصب کنید. باید بتوانید دستورات کامپوزر را فوراً اجرا کنید.
توجه به این نکته ضروری است که پس از نصب کامپوزر، ترمینال خود را مجدداً راهاندازی کنید زیرا متغیر PATH هنگام شروع ترمینال بارگیری میشود.
بنابراین این راهنمایی مختصری برای نصب کامپوزر در سیستمعاملهای مختلف بود.
Packagist چیست؟
packagist مخزن پیشفرض کامپوزر است. از آنجا که کامپوزر هنگام نصب یک کتابخانه خاص، کتابخانهها و وابستگیهای آن را ترسیم میکند. صدها کتابخانه در packagist موجود است که محبوبیت کامپوزر را نشان میدهد. در پروژههای پی اچ پی خود، اگر به ویژگی خاصی نیاز دارید که فکر میکنید قبلا به عنوان یک کتابخانه شخص ثالث در دسترس است، packagist اولین جایی است که باید بررسی کنید.
وقتی نوبت به جستجوی كتابخانهها میرسد، کامپوزر نیز قادر است به فراتر از مخزن packagist نگاه كند. شما میتوانید از کامپوزر بخواهید با تغییر کلید مخازن در فایل composer.json، به مخازن غیر از packagist برای نصب کتابخانه نگاه کند. در واقع، اگر میخواهید بستههای کامپوزر خصوصی خود را مدیریت کنید، این کاری است که شما انجام میدهید.
در بخش بعدی، خواهیم دید که چگونه از کامپوزر برای نصب کتابخانه در پروژههای پی اچ پی خود استفاده کنید.
نحوه استفاده از composer
اکثراً دو روش برای نصب کتابخانهها با کامپوزر وجود دارد. بیایید سریعاً آن را ببینیم تا نحوه عملکرد آن را بفهمیم.
دستور install
برای استفاده از install، ابتدا باید یک فایل composer.json را در پروژه خود ایجاد کنید. در فایل composer.json، فقط باید وابستگی پروژه خود را اعلام کنید، همانطور که در قطعه کد زیر نشان داده شده است.
{
"require": {
"phpmailer/phpmailer": "~6.1"
}
}
در مرحله بعد، وقتی دستور نصب کامپوزر را از آن پوشه اجرا میکنید، کامپوزر بسته phpmailer و وابستگیهای آن را در فهرست پروژه نصب میکند. مهمتر از همه، این فایل را نیز composer.lock ایجاد میکند، که لیستی از همه بستهها و نسخههای دقیق آن را نصب میکند.
دستور require
میتوان گفت که کامپوزر به دستوری نیاز دارد که نوعی میانبر برای فرآیند قبلی ایجاد فایل composer.json است و به طور خودکار بستهای به فایل composer.json شما اضافه میکند. دستور زیر نحوه نصب بسته phpmailer را با کمک require نشان میدهد.
$composer require phpmailer/phpmailer
پس از نصب پکیج phpmailer و وابستگیهای آن، باید بستهای را که در فایل composer.json نصب شده است، اضافه کنید. اگر این فایل وجود نداشته باشد، در پرواز ایجاد میشود. البته برای نوشتن اطلاعات بسته، به همراه نسخههای دقیق، فایل composer.lock را نیز به روز میکند.
به این ترتیب میتوانید وابستگیهای لازم را در پروژههای پی اچ پی خود با استفاده از کامپوزر نصب کنید که در این مرحله ما به پایان این مقاله نیز رسیدهایم.
جمعبندی
کامپوزر به عنوان استانداردی برای مدیریت وابستگیهای پروژه در پی اچ پی تبدیل شده است. در این مقاله، ما به اصول اولیه کامپوزر و نحوه نصب آن پرداختیم.
بهترین اسکریپتهای PHP در CodeCanyon
کتابخانههای رایگان در Packagist برای قابلیتهای اساسی فوقالعاده هستند و پایه و اساس یک برنامه خوب میباشند. با این حال، برای ویژگیهای تخصصیتر و یا برای برنامههای کامل که میتوانید از آنها استفاده کنید و سفارشی سازی کنید، به اسکریپتهای حرفهای پی اچ پی در CodeCanyon نگاهی بیندازید.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید