سلام دوستان یه سوال دارم ، چطور توی لاراول یه سری تابع ها بنویسیم که هرجا توی هر صفحه مثلا در ویو ها یا کنترلر ها از اون استفاده کنم ،
به طور مثال میخوایم یه تابع اختصاصی برای چک کردن نوع ورودی بسازیم کجا باید قرارش بدیم .
ممنون میشم راهنماییم کنید
روشی که آقای بیات اشاره کردند هم درسته. یک روش دیگه هم داره که من معمولا ترجیح میدم این هست:
اول یک پوشه داخل app بسازید مثلا بنام Helpers. بعد به هر تعداد دلخواه فایل با پسوند .php میسازید داخلش که محتوی function های عمومی تون هست. بعد با دستور زیر یک provider میسازید:
php artisan make:provider MyHelpersServiceProvider
از مسیر app/Providers/MyHelpersServiceProvider.php بازش میکنید و محتوای زیر رو داخلش قرار میدید:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class MyHelpersServiceProvider extends ServiceProvider {
public function register() {
foreach (glob(app_path('Helpers') . '/*.php') as $file) {
require_once $file;
}
}
public function boot() {
//
}
}
دستور بالا میگه برو از همون پوشه Helpers که قبلا ایجاد کردیم هر فایلی با پسوند .php رو پیدا کردی require کن در زمان اجرای برنامه.
و در آخرین مرحله کافیه این serviceproider ی که ایجاد کردیم رو به لاراول معرفی کنیم تا اجرا بشه. برای این کار فایل config/app.php رو باز میکنید و خط کد زیر رو به providers اضافه میکنید:
'providers' => [
//...
App\Providers\MyHelpersServiceProvider::class,
//...
],
و تمام. 😊
شاید پاسخ شما همینجا باشد