منتشر کردن پکیجها در packagist یا composer
برای منتشر کردن پکیحهای PHP خود در composer این نوشتهی اختصاصی را دنبال کنید.
منتشر کردن پکیجها در packagist یا composer
اگر پکیجهای PHP خود را قصد دارید روی packagist یا composer منتشر کنید دستورات زیر را دنبال کنید:
ابتدا در Github و Packagist عضو شوید و سپس Repository خود را در گیت هاب منتشر کنید.
سپس دستور زیر را در پوشهی مورد نظر خود اجرا کنید:
composer init
در نهایت فایلی با نام composer.json ساخته میشود که شامل اطلاعات زیر است:
{
"name": "camelcase-ir/hello-composer",
"description": "A simple hello world composer package",
"type": "library",
"license": "MIT",
"authors": [
{
"name": "Test",
"email": "test@test.com"
}
],
"minimum-stability": "stable",
"autoload": {
"psr-4": {"camelcase-ir\\HelloWorld\\": "src/"}
},
"require": {}
}
سپس وارد گیت هاب شوید و یک نسخه را Release کنید و بعد دستور زیر را مجدد در Command line اجرا کنید:
composer require camelcase-ir/hello-composer
نکته: در مراحل بالا نصب بودن Composer ضروری است.
منبع:
https://www.w3resource.com/php/composer/create-publish-and-use-your-first-composer-package.php
سوالات خود را در ارتباط با آموزش بالا برای ما بنویسید.



















آیا برای استفاده از Composer حتما نیاز به نصب محلی PHP هست؟
خیر، برای استفاده از Composer نیازی به نصب محلی PHP نیست، اما Composer به PHP نیاز دارد و باید PHP را در سیستم خود داشته باشید.
آیا میشه پکیجهای خصوصی هم در Packagist منتشر کرد؟
بله، امکان انتشار پکیجهای خصوصی در Packagist وجود دارد، اما نیاز به تنظیمات و اشتراکهای ویژهای دارد. برای اطلاعات بیشتر، میتوانید به مستندات Packagist مراجعه کنید.
برای autoload کردن کلاسها حتما باید PSR-4 باشه یا PSR-0 هم کار میکنه؟
سلام. بله، PSR-0 هم کار میکند، اما PSR-4 توصیه میشود چون ساختار مدرنتری دارد و انعطافپذیری بیشتری فراهم میکند.
آیا فقط پکیجهای PHP با Composer قابل منتشر شدن هستن؟
خیر، Composer برای مدیریت وابستگیها و انتشار پکیجهای PHP استفاده میشود. برای زبانهای دیگر، ابزارهای مدیریت پکیج متفاوتی وجود دارد، مانند npm برای جاوااسکریپت.
آیا قبل از composer init باید حتما repository روی GitHub ساخته باشه؟
بله، بهتر است قبل از اجرای composer init، ابتدا repository خود را در GitHub ایجاد کنید تا بتوانید پکیج خود را به درستی منتشر کنید.