لاراول پاینت / laravel pint یه code style fixer بر پایه PHP-CS-Fixer هست که به طور خودکار اشتباهات خارج از سبک و اصول کدنویسی رو اصلاح میکنه. البته خود PHP-CS-Fixer قابلیت ادقام با اکثر editor و IDE های محبوب رو داره اما به نظرم آوردنش توی لاراول و استفاده ازش آسونتره.
لاراول پاینت / laravel pint موقع ادغام سورس کدهای خارجی/قدیمی یا زمانی که کد شما دچار بدهی فنی شده کاربرد داره.
لاراول پاینت / laravel pint به طور کلی چه کارهایی رو انجام میده؟
- مرتب کردن کامنت های چند خطی
- اصلاح سینتکس و مرتب کردن تو رفتگی آرایهها(داخل کد های قدیمی آرایه رو با array() تعریف میکردیم اما سینتکس جدیدش به [] تغییر پیدا کرده.)
- خط خالی بعد از namespace و tag های php
- ترکیب isset و unset های متوالی
// before
if (isset($a) && isset($b)) {}
unset($a);
unset($b);
// after
if (isset($a, $b)) {}
unset($a, $b);
- رعایت فاصله در جاهایی مثل الحاق دو رشته.
// before
$name = $request->get('name');
$message = 'Hello '.$name;
// after
$message = 'Hello ' . $name;
- حذف فاصلههای اضافی
// before
declare( strict_type = 1 );
// after
declare(strict_types=1);
- وضوح در رشته های شامل متغیر
$name = 'Steve';
// before
$implicit = "Hello, $name";
// after
$explicit = "Hello {$name}";
و به طور کلی هر آنچه باید طبق psr رعایت شود.
نصب و استفاده از لاراول پاینت laravel pint
برای نصب با کامپوزر از دستور زیر استفاده کنید.
composer require laravel/pint --dev
سپس جهت استفاده میتونید دستور زیر رو اجرا کنید. حالت بدون آرگومان کل پروژه شما رو بررسی و اصلاح میکنه. همچنین میتونید به عنوان آرگمان، آدرس فایل یا دایرکتوری مورد نظرتون رو بدین تا فقط اون بررسی بشه.
./vendor/bin/pint
// or
./vendor/bin/pint app/Models
// or
./vendor/bin/pint app/Models/User.php