مقدمه

مجتبی پاکزاد کامپوزر 1.7.1 در حال تکمیل رایگان

کامپوزر یک ابزار برای مدیریت وابستگی (dependency management) در PHP است. کامپوزر به شما امکان تعریف لایبرری‌هایی که پروژه شما به آن وابسته است را می‌دهد و مدیریت (نصب/آپدیت) آن‌ها را به عهده می‌گیرد.

مدیریت وابستگی

کامپوزر پکیج منجری مانند آنچه Yum و Apt هستند، نیست. البته که کامپوزر با پکیج‌ها یا لایبرری‌ها سروکار دارد، اما آن‌ها را به صورت پروژه‌ای مدیریت می‌کند و در یک دایرکتوری (برای مثال vendor) در پروژه شما نصب‌شان می‌کند.به صورت پیش‌فرض چیزی را به صورت گلوبال نصب نمی‌کند. بنابراین، این ابزار (کامپوزر) یک مدیریت‌کننده وابستگی است. با این حال، کامپوزر از یک پروژه‌ گلوبال برای دسترسی راحت‌تر به دستوراتش، از طریق دستورات گلوبال ساپورت می‌کند.

پشت کامپوزر ایده جدیدی نیست و اکیدا الهام گرفته از npm نود و bundler روبی است.

فرض کنید:

  1. پروژه‌ای دارید که به تعدادی لایبرری وابسته است.
  2. بعضی از آن لایبرری‌ها نیز به لایبرری‌های دیگری وابسته هستند.

کامپوزر:

  1. به شما این امکان را می‌دهد تا لایبرری‌هایی که پروژه‌تان به آن‌ها وابسته است را تعریف کنید.
  2. می‌فهمد که کدام ورژن از هر پکیج باید نصب شود و آن‌ها را نصب می‌کند (به این معنی که آن‌ها را ابتدا دانلود کرده و سپس در پروژه‌تان قرار می‌دهد).

برای اطلاعات بیشتر درباره تعریف وابستگی‌ها، پست کاربردهای اصلی را مطالعه کنید.

الزامات سیستم

کامپوزر برای اجرا نیاز به PHP 5.3.2 یا بالاتر دارد. تعدادی تنظیمات حساس و فلگ کامپایل نیز نیاز است، اما هنگامی که از installer برای نصب کامپایلر استفاده کنید، درباره هرگونه ناسازگاری به شما هشدار داده می‌شود.

برای نصب پکیج‌ها از سورس‌ها به جای آرشیوهای ساده zip، بسته به نحوه کنترل شدن ورژن پکیج‌ها، نیاز به git یا svn یا fossil یا hg خواهید داشت.

کامپوزر قابل استفاده در چندین پلت‌فرم است و تلاش می‌کنیم اجرای آن در ویندوز، لینوکس و OSX را به هم نزدیک سازیم.

نصب - لینوکس / یونیکس / OSX

دانلود فایل اجرایی کامپوزر

کامپوزر یک فایل نصب (installer) مناسب را ارائه می‌دهد که می‌توانید به طور مستقیم آن را از کامندلاین اجرا کنید. در صورت تمایل، این فایل را دانلود کنید یا اگر می‌خواهید درباره نحوه کارهای درونی اینستالر بیشتر بدانید، کدهای آن را که در گیت‌هاب قرار دارد، بازبینی کنید. سورس کد اینستالر PHP ساده است.

به طور خلاصه، دو راه برای نصب کامپوزر وجود دارد. لوکالی به عنوان بخشی از پروژه شما یا گلوبالی به صورت قابل اجرا به صورت گسترده در سیستم.

لوکالی

برای نصب کامپوزر به صورت لوکالی، اینستالر را در دایرکتوری پروژه خود اجرا کنید. برای دیدن دستورالعمل صفحه دانلود را ببینید.

اینستالر تعدادی از تنظیمات PHP را بررسی خواهد کرد و سپس composer.phar را در دایرکتوری کاری شما دانلود خواهد کرد. این فایل، نسخه باینری کامپوزر است. این فایل یک PHAR است. PHAR یک فرمت آرشیو برای PHP است که می‌تواند در کامندلاین، در میان چیزهای دیگر اجرا شود.

حالا به منظور اجرای کامپوزر، دستور php composer.phar را اجرا کنید.

با استفاده از آپشن --install-dir، می‌توانید کامپوزر را در یک دایرکتوری خاص نصب کنید و علاوه بر این، با استفاده از آپشن --filename نام آن را تغییر دهید.

php composer-setup.php --install-dir=bin --filename=compose

حالا به منظور اجرای کامپوزر، دستور php bin/composer را اجرا کنید.

گلوبالی

فایل PHAR کامپوزر را هر جایی که می‌خواهید، می‌توانید قرار دهید. اگر آن را در یک دایرکتوری قرار دهید که بخشی از PATH شما است، می‌توانید به صورت گلوبالی به آن دسترسی داشته باشید. در سیستم‌های لینوکسی حتی می‌توانید آن را قابل اجرا سازید و بدون استفاده مستقیم از مفسر پی‌اچ‌پی، آن را فراخوانی کنید.

بعد از نصب اینستالر، دستورالعمل‌های صفحه دانلود را دنبال کنید. با استفاده از دستور زیر، می‌توانید کامپوزر را به یک دایرکتوری که در path شما قرار دارد، انتقال دهید:

mv composer.phar /usr/local/bin/composer

اکر دوست دارید که آن را فقط برای یوزر خودتان نصب کنید و جلوی نیاز به پرمیشن‌های روت را بگیرید، می‌توانید از ~/.local/bin به جای دستور بالا استفاده کنید که به طور پیش‌فرض در برخی توزیع‌های لینوکس در دسترس است.

توجه

اگر اجرای دستور بالا به دلیل عدم داشتن پرمیشن شکست خورد، باید دوباره با استفاده از sudo آن را اجرا کنید.

توجه

در بعضی از ورژن‌های OSX، دایرکتوری /usr به صورت پیش‌فرض وجود ندارد. اگر با خطای /usr/local/bin/composer: No such file or directory مواجه شدید، آن‌وقت، قبل از ادامه کار، ابتدا باید این دایرکتوری را به صورت دستی بسازید:mkdir -p /usr/local/bin

توجه

برای اطلاعات بیشتر درباره نحوه تغییر PATH خود، مقاله ویکیپدیا را بخوانید و یا درباره آن گوگل کنید.

حالا به منظور اجرای کامپوزر، به جای php composer.phar، دستور composer را اجرا کنید.

نصب - ویندوز

با استفاده از اینستالر

این روش، ساده‌ترین راه برای نصب کامپوزر در ماشین (لپ‌تاپ، سرور یا هر دستگاهی) شما است.

فایل Composer-Setup.exe را دانلود و نصب کنید. این فایل آخرین ورژن کامپوزر را نصب می‌کند و PATH شما را تنظیم می‌کند، بنابراین، از طریق کامندلاین می‌توانید دستور composer را در هر دایرکتوری فراخوانی کنید.

توجه

ترمینال فعلی خود را ببندید. برای تست و استفاده یک ترمینال جدید باز کنید: این کار به این دلیل اهمیت دارد که PATH تنها در زمان شروع ترمینال لود می‌شود.

نصب به صورت دستی

به یک دایرکتوری در PATH خود تغییر مسیر دهید و برای دانلود php composer.phar، اینستالر را مطابق با دستورالعمل‌های صفحه دانلود اجرا کنید.

C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat

دایرکتوری را به متغییر محیطی PATH خود اضافه کنید، اگر تا به حال این کار را نکرده‌اید. برای اطلاعات بیشتر درباره نحوه تغییر PATH خود، مقاله ویکیپدیا را بخوانید و یا درباره آن گوگل کنید.

ترمینال فعلی خود را ببندید. برای تست و استفاده یک ترمینال جدید باز کنید.

C:\Users\username>composer -V
Composer version 1.0.0 2016-01-10 20:34:53

استفاده از کامپوزر

اکنون که کامپوزر را نصب کرده‌اید، آماده هستید تا از آن استفاده کنید! برای توضیحات کوتاه و به زبان ساده، مستقیم به سراغ پست بعد بروید.

منبع
Introduction