تکنولوژی نوین اینترنتی
ایجاد و انتشار یک پکیج در لاراول یکی از راههای مفید برای اشتراکگذاری قابلیتهای خاص با سایر پروژهها است. لاراول امکان ایجاد پکیجهای بسیار قدرتمند را به راحتی فراهم کرده است. در اینجا به نحوه ایجاد یک پکیج در لاراول و انتشار آن میپردازیم.
پکیجها معمولاً در پوشه packages
در دایرکتوری پروژه لاراول قرار میگیرند. برای شروع، یک دایرکتوری جدید برای پکیج خود بسازید.
به عنوان مثال، ساختار زیر را در نظر بگیرید:
در اینجا:
your-vendor
نام نام تجاری شما یا گروهی است که پکیج را میسازد.
your-package
نام پکیج شما است.
src
دایرکتوری است که کد اصلی پکیج در آن قرار میگیرد.
composer.json
برای مدیریت وابستگیها و اطلاعات پکیج استفاده میشود.
composer.json
برای پکیجدر دایرکتوری your-package
، یک فایل composer.json
بسازید که اطلاعات پکیج شما را مشخص کند.
در این فایل:
name
: نام پکیج شما با فرمت vendor/package
است.
autoload
: نحوه بارگذاری کلاسها با استفاده از استاندارد PSR-4.
require
: وابستگیهای پکیج (مثلاً لاراول).
extra
: تنظیمات خاص لاراول برای ثبت سرویس پرووایدها و فاسیادها.
در دایرکتوری src
، یک کلاس سرویس پرووایدر بسازید. این سرویس پرووایدر مسئول بارگذاری پکیج در لاراول خواهد بود.
مثلاً در src/YourPackageServiceProvider.php
:
برای راحتتر کردن دسترسی به ویژگیهای پکیج، میتوانید یک فاسیاد بسازید.
در src/Facades/YourPackage.php
:
در داخل دایرکتوری src
، منطق اصلی پکیج خود را بنویسید. مثلاً یک کلاس برای انجام کاری خاص:
در سرویس پرووایدر، میتوانید این کلاس را ثبت کنید:
برای استفاده از پکیج، باید آن را به پروژه لاراول اضافه کنید. شما میتوانید پکیج را به دو روش به پروژه خود اضافه کنید: به صورت لوکال (در محیط توسعه) یا از طریق مخزن بسته مانند Packagist.
برای استفاده از پکیج به صورت لوکال، در فایل composer.json
پروژه اصلی خود، پکیج را به صورت زیر اضافه کنید:
سپس دستور زیر را برای نصب پکیج اجرا کنید:
اگر میخواهید پکیج را از طریق Packagist منتشر کنید، باید پکیج را به آن ارسال کنید. اما قبل از این کار، باید مطمئن شوید که composer.json
شما به درستی تنظیم شده است و تمام اطلاعات پکیج به درستی در آن قرار دارد.
برای انتشار پکیج در Packagist (مخزن پیشفرض برای پکیجهای Composer)، باید مراحل زیر را انجام دهید:
ابتدا به سایت Packagist بروید و یک حساب کاربری بسازید.
برای ارسال پکیج، باید مخزن پکیج خود را در GitHub یا GitLab ایجاد کنید. پس از ایجاد مخزن، به سایت Packagist بروید و پکیج خود را با وارد کردن آدرس مخزن ارسال کنید.
مثلاً:
پس از ارسال پکیج، Packagist به طور خودکار آن را پردازش کرده و در مخزن خود قرار میدهد.
برای بهروزرسانی پکیج منتشر شده، کافیست تغییرات خود را در مخزن GitHub انجام دهید و نسخه جدید را در composer.json
اعلام کنید. سپس با اجرای دستور زیر، نسخه جدید را منتشر کنید:
پکیجهای لاراول یک راه قدرتمند برای به اشتراکگذاری قابلیتها با سایر پروژهها هستند.
شما میتوانید پکیجها را با استفاده از دستور php artisan make:controller
و ساختار دایرکتوری مناسب ایجاد کنید.
با استفاده از سرویس پرووایدر، فاسیاد و کلاسها، میتوانید منطق پکیج خود را به راحتی مدیریت کنید.
پس از ساخت پکیج، میتوانید آن را در Packagist منتشر کنید و از آن در پروژههای مختلف استفاده کنید.
اگر سوال یا مشکلی دارید یا نیاز به کمک بیشتر دارید، خوشحال میشوم که کمک کنم!