0

我正在使用 Laravel 5.5,并且我在 dir 中有一个配置文件,app\Json\Schemas\TestSchema.php其中包含一个具有如下配置的数组:

return [
  'value' => 'string'
];

动态包含文件的最佳方法是什么?

在我的模型中

namespace App;

use App\Json\Traits\JsonModel;
use Illuminate\Database\Eloquent\Model;

class User extends Model
{ 
    public function getJsonSchema($schema)
    {
        return  'App\\Json\\Schemas\\'.$schema; 
    }
}
4

1 回答 1

2

最好的方法是将您的配置文件移动到该config文件夹​​。让我们假设您调用它schema.php

您可以使用以下方法在代码中加载配置文件(其中schema不带 的配置文件的名称.php):

config('schema');

如果你想要value,你可以使用点表示法(schema配置文件的名称在哪里,并且value是配置数组中的一个键):

$value = config('schema.value');

因此该getJsonSchema函数可以更新为($schema配置文件的名称在哪里):

public function getJsonSchema($schema)
{
    return  'App\\Json\\Schemas\\'.config($schema.'.value'); 
}
于 2017-12-06T10:47:48.870 回答