سلام و وقت بخیر
من یک کلاسی در ورژن 5.7 ساختم که اتولود می شه در کوپوزر به این صورت هست:
"autoload": {
"files": [
"app/Http/Helper.php"
],
"classmap": [
"database/seeds",
"database/factories"
],
"psr-4": {
"App\\": "app/"
}
},
ولی به تازگی پروژه را آبدیت کردم به ورژن 7 ولی توی ورژن هفت گزینه ای به اسم files نداره:
"autoload": {
"psr-4": {
"App\\": "app/"
},
"classmap": [
"database/seeds",
"database/factories"
]
},
چطوری می تونیم اون قسمت "app/Http/Helper.php" را بیاریم توی ورژن 7
ممنون می شویم کمی توضیح دهید
با استفاده از provider ها میتونید این کار رو انجام بدید و نیازی به تعریف در کامپوزر هم نداره و خودش اعمال میشه
یه کلاس به نام HelperServiceProvider در پوشه Providers در پوشه app بسازید و کد زیر رو کپی کنید در داخل اون
<?php
namespace App\Providers;
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\ServiceProvider;
class HelperServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
foreach (glob(app_path().'/Helpers/*.php') as $filename){
require_once($filename);
}
}
}
بعد یه پوشه در داخل app به نام Helpers بسازید و فایل خودتون رو در اون با هر نامی که دوست دارید کپی کنید چون در کد بالا اگه توجه کنید نوشتیم *.php که یعنی هر فایل php هست رو فراخوانی کن
و بعد از اون هم در پوشه config فایل app.php رو باز کنید و در بخش providers اون HelperServiceProvider رو اضافه کنید و تمام
'providers' => [
App\Providers\HelperServiceProvider::class,
]
شما در واقع باید فایلی که میگید بر پایه فانکشن ها هست داخل پوشه Helpers در پوشه app آپلود میکردید و دقیقا هم منظور من بر پایه فانکشن بود و دیگه درگیر کامپوزر هم نمیشدید چون خودش در این حالت اتوماتیک composer رو ست میکنه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟