در این قسمت قصد دارم روش نصب و استفاده از چارچوب سیمفونی برای برنامه نویسان لاراول را آموزش دهم. به این صورت که برای هر دستوری که در لاراول استفاده کرده اید، دستور را راه حل معادل برای سیمفونی را نشان خواهم داد.

من به هیچ وجه ادعای متخصص بودن در Symfony یا Laravel را ندارم ، بنابراین اگر شما احساس کردید که در نظرات من اشتباه هست حتما در بخش نظرات اعلام کنید.

من تلاش خود را برای یادگیری Symfony در حالی که در حال حاضر از Laravel استفاده می کنم توصیف کرده ام . با این حال، اگر شما می خواهید از سیمفونی به لاراول هم تغییر دهید می تواند برای شما هم مفید باشد.

نصب از طریق composer

هر دو Laravel و Symfony را می توان از طریق یک فرمان composer ساده نصب کرد. اول، بگذارید جدیدترین نسخه Laravel را نصب کنیم. در خط فرمان داس (cmd) به فهرست ریشه مجازی وب تان رفته و دستور زیر را اجرا کنید:

composer create-project laravel/laravel laravel-demo

این یک پوشه جدید به نام laravel-demo را ایجاد کرده، تمام وابستگی های لازم را نصب می کند و اسکریپت های نصب را اجرا می کند. همانطور که برای پروژه Symfony 4 نیز انجام می شود:

composer create-project symfony/skeleton symfony-demo

همانطور که انتظار داشتید – composer فایل های پروژه را در داخل پوشه symfony-demo قرار می دهد و وابستگی ها را هم نصب می کند.

شایان ذکر است که اسکریپت های پس از نصب  Symfony به طور خودکار مخزن را راه اندازی می کنند (با Laravel شما مجبور خواهید شد به صورت دستی git init را اجرا کنید).

نصب کننده های اختصاصی

به غیر از نصب composer ، همچنین می توانید از نصب کننده های اختصاصی استفاده کنید که روند را ساده می کند. در Laravel ساده است نیاز به به یک بسته composer سراسری دارید:

composer global require "laravel/installer"

اگر متغیر محیطی PATH در ویندوز شما حاوی فهرست bin  مربوط composer باشد، می توانید پروژه های جدید Laravel را با تنها دستور زیر ایجاد کنید:

laravel new laravel-project

هر چند Symfony 4، در هنگام نوشتن این مقاله، نصب کننده (Installer) ندارد، بسته https://github.com/symfony/symfony-installerدر github وجود دارد که این امکان را به سیمفونی هم اضافه می کند ضمن اینکه توسعه دهنده آن تاکید کرده است که :

این نصب کننده با نسخه Symfony 4 و جدیدتر سازگار نیست. بجای آن ، از Composer استفاده کنید و پروژه Symfony 4 خود را ایجاد کنید.

حدس می زنم این ابزار توسط نسخه های قبلی Symfony استفاده شده است، اما از آنجایی که من تازه شروع به استفاده از آن کردم، همه چیز را نمی دانم. البته، نصب composer بسیار ساده است که در اغلب موارد نصب کننده یک کار اضافه خواهد بود .

حرکت از لاراول به سیمفونی

اجرای سرورهای توسعه

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

php -S localhost:8888 -t public

که public  پوشه پروژه شما هست. ( ابتدا وارد پوشه ریشه مجازی وب شده و سپس دستور بالا را اجرا کنید، این دستور برای هر دوی آنها کار می کند.)

روش دیگر این است که از Docker یا چیزی شبیه  Valet در Laravel  استفاده کنید . هر دو چارچوب یک فرمان برای اجرای یک سرور فراهم می کنند.

در لاراول:

php artisan serve

به صورت پیش فرض سایت شما دارای آدرس http://127.0.0.1:8000 خوهد بود (اما شما می توانید پورت را با عنوان یک آرگومان سفارشی تعیین کنید).

از آنجا که Symfony 4 به طور پیش فرض بسیار کم ظاهر می شود، ابتدا باید بسته server را نصب کنید (با اجرا composer require server) و سپس بتوانید دستور زیر را اجرا کنید:

bin/console server:run

و سپس خواهید توانست در مرورگر آدرس http://127.0.0.1:8000 را باز کنید.

شکل زیر نحوه اجرای سرور برای دو پروژه لاراول(در پوشه lavavel1) و سیمفونی(در پوشه symfony1) را نشان می دهد .

اجرای سرور لاراول - سیمفونی

مقایسه لاراول با سیمفونی

ایجاد یک بسته جدید در هر دو مورد تقریبا غیرممکن است، بنابراین برای یادگیری  واقعا چیز جدیدی نیست. تنها تفاوت ابزار CLI (برای لاراولartisan در ریشه پروژه است و برای Symfony برنامه console در داخل پوشه bin/console است) اما از آنجایی که اکثر توسعه دهندگان از Docker یا nginx/apache استفاده می کنند، می توانید از همان روش قبل برای ایجاد پروژه استفاده کنید.

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