كيفية تثبيت واستخدام حزم PHP باستخدام Composer

Composer هو أداة قوية لإدارة التبعيات في مشاريع PHP. يسمح لك بتثبيت واستخدام الحزم (libraries) التي يحتاجها مشروعك بسهولة. في هذا الدليل، سنتعرف على كيفية تثبيت Composer، وكيفية استخدامه لتثبيت حزم PHP في مشروعك.

ما هو Composer؟

Composer هو مدير حزم لـ PHP يتيح لك تثبيت الحزم وإدارة التبعيات بين مختلف مكتبات PHP. بدلاً من تثبيت كل مكتبة يدويًا، يقوم Composer بتنزيل الحزم المطلوبة وإعداد بيئة مشروعك لتكون جاهزة للاستخدام.

تثبيت Composer

لتثبيت Composer على جهازك، يمكنك اتباع الخطوات التالية:


# 1. تنزيل برنامج التثبيت Composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

# 2. التحقق من سلامة برنامج التثبيت (اختياري)
php -r "if (hash_file('sha384', 'composer-setup.php') === 'HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

# 3. تشغيل برنامج التثبيت
php composer-setup.php

# 4. حذف ملف التثبيت
php -r "unlink('composer-setup.php');"

بعد تنفيذ هذه الخطوات، سيكون لديك ملف composer.phar يمكنك استخدامه لتشغيل Composer عبر سطر الأوامر.

تهيئة مشروع PHP باستخدام Composer

لبدء استخدام Composer في مشروع PHP، يجب عليك إنشاء ملف composer.json في جذر المشروع. هذا الملف يحتوي على معلومات حول الحزم التي يعتمد عليها مشروعك.


# إنشاء ملف composer.json
composer init

سيطلب منك Composer بعض الأسئلة حول مشروعك (مثل الاسم والوصف)، وبعد الإجابة عليها، سيتم إنشاء ملف composer.json تلقائيًا.

تثبيت حزم PHP باستخدام Composer

لتثبيت حزمة PHP معينة في مشروعك، يمكنك استخدام الأمر composer require متبوعًا باسم الحزمة. على سبيل المثال، لتثبيت حزمة monolog/monolog التي تُستخدم لتسجيل السجلات:


composer require monolog/monolog

سيقوم Composer بتنزيل الحزمة المطلوبة وتثبيتها في مجلد vendor داخل مشروعك. سيتم أيضًا تحديث ملف composer.json لإضافة الحزمة الجديدة إلى قائمة التبعيات.

استخدام الحزم المثبتة في مشروعك

بعد تثبيت الحزم، يمكنك استخدام التحميل التلقائي (Autoloading) للوصول إلى فئات (Classes) الحزم المثبتة دون الحاجة إلى تضمينها يدويًا في مشروعك.


<?php
// تضمين ملف التحميل التلقائي
require 'vendor/autoload.php';

// الآن يمكنك استخدام الفئات من الحزم المثبتة
$logger = new Monolog\Logger('name');
$logger->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));
$logger->warning('This is a warning!');

سيقوم Composer بإدارة تحميل الفئات تلقائيًا، مما يسهل عليك استخدام الحزم دون الحاجة إلى تضمين كل ملف يدويًا.

تحديث الحزم المثبتة

للتأكد من أن مشروعك يستخدم أحدث الإصدارات من الحزم المثبتة، يمكنك تشغيل الأمر composer update:


composer update

هذا الأمر سيقوم بتحديث جميع الحزم إلى أحدث الإصدارات المتوافقة وفقًا لما هو محدد في composer.json.

إزالة حزم PHP المثبتة

إذا كنت ترغب في إزالة حزمة معينة من مشروعك، يمكنك استخدام الأمر composer remove متبوعًا باسم الحزمة. على سبيل المثال، لإزالة حزمة monolog/monolog:


composer remove monolog/monolog

سيقوم Composer بإزالة الحزمة وتحديث ملف composer.json وقائمة التبعيات.

الخلاصة

يعد Composer أداة أساسية لكل مطور PHP، حيث يوفر وسيلة فعالة لإدارة التبعيات وتثبيت الحزم في مشروعك بسهولة. باستخدام Composer، يمكنك التركيز على تطوير مشروعك دون القلق بشأن إدارة التبعيات يدويًا.