@magali
В Laravel можно создать глобальную переменную для всех моделей, определив ее в базовой модели.
1 2 3 4 5 6 7 8 |
namespace AppModels; use IlluminateDatabaseEloquentModel; class BaseModel extends Model { public static $globalVariable = 'value'; } |
1 2 3 4 5 6 7 8 9 10 |
namespace AppModels; class User extends BaseModel { public function someMethod() { $globalVar = self::$globalVariable; // используйте переменную здесь } } |
1 2 3 4 5 6 7 8 9 10 |
namespace AppModels; class SomeOtherModel extends BaseModel { public function someMethod() { self::$globalVariable = 'new value'; // глобальная переменная изменилась для всех моделей } } |
Теперь вы можете использовать BaseModel::$globalVariable
в любой модели, наследующей BaseModel
. Помните, что глобальные переменные могут быть не лучшим решением, если вы хотите сделать что-то более сложное, в таком случае может быть лучше использовать конфигурационные файлы или сервис-провайдеры.