2015-12-11 6 views
2

Я попытался найти google, где я могу хранить в статических данных Laravel (просто простые массивы), но не нашел никаких очевидных причин или объяснений, а также некоторые существующие решения.Laravel где разместить статические данные

Данные могут быть, например, списком стран. Да, это может быть сохранено в БД, но это звучит для меня бесполезно, поскольку эти данные будут статическими и будут использоваться только для получения пупок.

Я видел много подходов для хранения данных, как это, например:

  • Модели (Сущности)
  • Хранение в упаковке
  • Контроллеры

Есть ли какие-либо методы, где хранить такие статические данные? Или, может быть, «данные» сами относятся к хранилищу данных, где он должен принадлежать, - базе данных, независимо от того, какие операции будут выполняться на нем?

ответ

2

Laravel является самоуверенным, и вы должны быть. Существует несколько способов сделать это.

Вы можете заставить его оставаться как конфиг и запросить как часть конфигурации. Например: config/mydata.php (обязательно верните массив), а затем config()->get('mydata.***').

Вы можете сделать помощника и зарегистрировать в автозагрузчик, создать приложение/helpers.php,

public function generate_data() 
{ 
    return [ 'x' , 'x' ,'x' ... ]; 
} 

регистр через composer.json,

{ 
    "autoload": { 
     "files": [ 
      "app/helpers.php" 
     ] 
    } 
} 

Ну, если вам нужен другой очевидный стиль PHP , создайте файл в любом месте корневого проекта, например: MY_LARAVEL_PROJECT_ROOT/mydata/country.php, создайте файл и верните массив своих вещей. В конце приложения/запуска/global.php, требуют,

require base_path().'/mydata/country.php'; 

Он просто работает так, и получать удовольствие :)

0

Вы можете хранить статические массивы и другие постоянные переменные в конфигурационном файле/constants.php ...

Смежные вопросы