ajerk
2017-09-11 19:58
为什么我获取'app_namespace'的结果是null :
我检查了config.php中的惯例配置里有'app_namespace'和'app_status':
然后用config()获取查看结果:
结果如下:(获取并显示出惯例配置参数,里面有)
我发现config()获取的配置参数里,没有namespace ,但是其他的却能够获取(比如app_status)。为什么是这样子?是权限问题?
惯例配置中没有这一项,当然你可以在应用配置app下的config.php中自定义配置,设置'namespace' => 'app', 然后在获取一下就有了
版本不一样,新版的配置文件中没有app_namespace这一项,所以获取到NULL,你设置成没有的名称当然是NULL了,你试试设置成database,它就会获取到数据库相关的配置
.我把那个注释掉还是返回的null。。为啥
配置conf文件夹之后,因为原本的CONF_PATH默认的路径是app目录,改成conf目录之后,app下的config.php文件就失效了,所以可以把app下的config.php文件拉到conf文件夹目录下。同样的,app目录下的database.php也会失效
问题已经找到了。
因为我跟着老师一样在application的同级目录下自己新建了conf配置文件夹(并对它进行了配置):
我把 define('CONF_PATH',__DIR__.'/../conf/'); 注释掉之后,再输出 config();
发现输出的结果里就有 'app_namespace'了,所以之前发生的问题就是有因为我把'CONF_PATH'的值改了,导致app目录下的config.php的app_namespace 读取不到,目前我就在conf文件夹下对app_namespac进行配置赋值。更好的解决方案还要再学习探索。
namespace app\index\controller;
我是 5.0.10的版本
快速入门ThinkPHP 5.0--基础篇
58655 学习 · 495 问题
相似问题