当前位置:  开发笔记 > 编程语言 > 正文

超薄3:如何访问设置?

如何解决《超薄3:如何访问设置?》经验,为你挑选了2个好方法。

在Slim 3发布之前,以下代码可以正常工作:

settings.php中,

return [
    'settings' => [
        'displayErrorDetails' => true,
        'modules' => [
           'core' => 'config/core/modules.php',
           'local' => 'config/local/modules.php'
        ],
    ],
];

的index.php

// Instantiate the app
$settings = require __DIR__ . '/../src/settings.php';
$app = new \Slim\App($settings);

$MyClass = new MyClass($app);

MyClass.php

class MyClass
{
    private $app;

    public function __construct($app)
    {
        $this->app = $app;
        $local = require $app->settings['modules']['local'];
    }

但在发布后,我收到以下错误:

注意:未定义的属性:/中的Slim\App :: $ settings

所以我不能再使用$app->settings了?那我应该怎么用?



1> moallemi..:

你可以得到这样的设置:

$container = $app->getContainer();
$settings = $container->get('settings');



2> Nanhe Kumar..:

您可以通过$ this访问设置路由callables

$modulesSettings = $this->get('settings')['modules']['local'];

有关更多信息,请阅读此处

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有