【问题标题】:Laravel where to place static dataLaravel 在哪里放置静态数据
【发布时间】:2015-12-12 02:10:13
【问题描述】:

我试图用谷歌搜索出我可以在 Laravel 中存储静态数据的位置(只是简单的数组),但没有找到任何明显的原因或解释,只是一些现有的解决方案。

数据可以是例如国家/地区列表。是的,它可以存储在数据库中,但对我来说这听起来毫无用处,因为该数据将是静态的并且仅用于检索目的。

我见过很多存储数据的方法,例如:

  • 模型(实体)
  • 作为包存储
  • 控制器

有什么做法可以存储这些静态数据吗? 或者它自己的“数据”可能是指存储数据应该属于的地方,-数据库,无论对其进行什么操作?

【问题讨论】:

  • 我认为这是一个很好的问题,但缺乏正确的答案。

标签: php laravel


【解决方案1】:

Laravel 固执己见,你也应该如此。有不止一种方法可以做到这一点。

你可以让它像一个配置一样,并作为一个配置进行查询。例如:config/mydata.php(确保返回一个数组),然后是config()->get('mydata.***')

你可以创建一个助手并注册到自动加载器,创建app/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,创建该文件并返回一个您的东西的数组。在 app/start/global.php 的末尾,需要它,

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

它就是这样工作并且玩得开心:)

【讨论】:

    【解决方案2】:

    您可以将静态数组和其他常量变量存储在 config/constants.php 文件中...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-12
      • 1970-01-01
      • 2018-03-29
      • 2021-10-22
      • 2015-05-11
      • 1970-01-01
      相关资源
      最近更新 更多