الملحن (برمجية)
الملحن (بالإنجليزية: Composer) هو نظام إدارة الحزم من أجل لغة PHP التي توفر شكل موحد لإدارة تبعيات PHP البرامج المطلوبة المكتبات. تم تطويره من قبل نيلس Adermann و جوردي بوغيانو الذي الاستمرار في إدارة المشروع. بدأت التنمية في نيسان / أبريل 2011 أول أفرج عنه في 1 مارس 2012.[7] الملحن بقوة مستوحاة من npm الخاص بلغة Node.js و bundler الخاص بلغة روبي .[8] المشروع التبعية حل خوارزمية بدأ PHP القائمة على ميناء زحمة هذا libzypp satsolver.[9]
نوع | |
---|---|
نظام التشغيل | |
النموذج المصدري | |
موقع الويب |
ضمان الجودة | |
---|---|
لغة البرمجة | |
الإصدار الأول |
1 مارس 2012 [4] |
الإصدار الأخير |
|
المستودع | |
الرخصة |
الملحن يعمل من خلال سطر الأوامر و تثبيت تبعيات مثل (المكتبات) تطبيق. كما يسمح للمستخدمين لتثبيت تطبيقات PHP التي تتوفر على "Packagist"[10] الذي هو المستودع الرئيسي تحتوي الحزم المتوفرة. كما يوفر autoload قدرات المكتبات التي تحدد autoload المعلومات إلى سهولة استخدام كود طرف ثالث.
الصياغة
عدلالأوامر
عدليوفر الملحن عدة معاملات تشمل:[11]
require
: إضافة المكتبة إلى ملف composer.json وتثبيتها.install
: تثبيت جميع المكتبات من composer.json. هذا هو الأمر المستخدم لتنزيل جميع تبعات مستودع PHP.update
: تحديث جميع المكتبات من composer.json وفقًا للإصدارات المسموح بها المذكورة فيه.remove
: إلغاء تثبيت مكتبة وإزالتها من composer.json.
تعريف المكتبات
عدلمثال على composer.json الذي تم إنشاؤه بواسطة الأمر التالي:
composer require monolog/monolog
{
"require": {
"monolog/monolog": "1.2.*"
}
}
الإصدارات
عدلتُحدد الإصدارات المسموح بها من المكتبات بواسطة:[12]
الرمز | الدور (يوضع قبل رقم الإصدار) | المثال |
---|---|---|
>= | يسمح بتمديد الرقم. بالإضافة إلى ذلك، يمكننا استخدام: >, <, <=. | "php": ">=5.5.9" يشمل PHP 7.
|
!= | يستبعد إصدارًا معينًا. | |
- | يحدد نطاق الإصدارات. | |
* | يمتد ليشمل جميع الإصدارات الفرعية. | "symfony/symfony": "3.1.*" يشمل الإصدار 3.1.1.
|
~ | يمتد إلى الإصدارات التالية من نفس المستوى. | "doctrine/orm": "~2.5" يشمل الإصدار 2.6، ولكن لا يشمل الإصدار 2.4 ولا 3.0.
|
^ | يشبه التلدة، لكن فقط إذا كانت هناك توافقية مع الإصدارات السابقة. |
الأطر المدعومة
عدل- سمفوني (سيمفوني) الإصدار 2 وما بعده
- لارافل (لارافيل) الإصدار 4 وما بعده
- كود إغنيتر (كودإجنايتر) الإصدار 3.0 وما بعده
- CakePHP (كيك بي إتش بي) الإصدار 3.0 وما بعده
- FuelPHP (فيول بي إتش بي) الإصدار 2.0 وما بعده
- دروبال (دروبال) الإصدار 8 وما بعده
- تيبو3 (تايبو3) الإصدار 6.2 وما بعده
- Neos Flow (نيوس فلو) الإصدار 2.0 وما بعده
- SilverStripe (سيلفرسترايب) الإصدار 3.0 وما بعده
- Magento (ماجينتو) الإصدار 2.0 وما بعده
- OpenMage (أوبن ماج) الإصدار 20.0.0 وما بعده
- يي (يي) الإصدار 1.1 وما بعده
- زاند فريم ورك (لاميناس)
- Silex (سيليكس) (إطار عمل ويب)
- Lumen (إطار عمل ويب) (لومين)
- إطار عمل Adianti (أديانتي) الإصدار 1 وما بعده
مراجع
عدل- ^ ا ب الوصول: 22 مارس 2017. وصلة مرجع: https://api.github.com/repos/composer/composer.
- ^ الوصول: 5 أكتوبر 2016.
- ^ وصلة مرجع: https://www.openhub.net/p/composer/. مسار الأرشيف: https://web.archive.org/web/20200726041207/https://www.openhub.net/p/composer/. تاريخ الأرشيف: 26 يوليو 2020.
- ^ وصلة مرجع: https://github.com/composer/composer/blob/master/CHANGELOG.md.
- ^ ا ب "Release 2.8.3". 17 نوفمبر 2024. اطلع عليه بتاريخ 2024-11-21.
- ^ وصلة مرجع: https://github.com/composer/composer/blob/master/LICENSE.
- ^ Software release, github.com, Retrieved April 24, 2016. نسخة محفوظة 27 مارس 2019 على موقع واي باك مشين.
- ^ Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013. نسخة محفوظة 12 فبراير 2018 على موقع واي باك مشين.
- ^ Composer acknowledgements نسخة محفوظة 22 ديسمبر 2017 على موقع واي باك مشين.
- ^ See packagist.org نسخة محفوظة 05 مارس 2018 على موقع واي باك مشين.
- ^ "Command-line interface / Commands". getcomposer.org. مؤرشف من الأصل في 2014-03-09.
- ^ "Versions and constraints - Composer". getcomposer.org. مؤرشف من الأصل في 2016-11-23.