为什么require_once只返回true,而不是我定义的数组;

时间:2017-06-11 03:39:37

标签: php laravel

我需要一个文件才能定义一个数组。像:

$config = require_once base_path().'/config/webchat.php';
var_dump($config);
exit();

和webchat.php只是定义一个数组:

$path = __DIR__.'/../storage/webchat_tmp/';

return [
    'path'     => $path,
    /*
     * swoole 配置项(执行主动发消息命令必须要开启)
     */
    'swoole'  => [
        'status' => false,
        'ip'     => '127.0.0.1',
        'port'   => '8866',
    ]
];

$ config导致布尔值为true,而不是数组。有人可以告诉我为什么,非常感谢。路径是对的。因为当我在webchat.php中设置exit()时。它是出口右边;

1 个答案:

答案 0 :(得分:0)

如果成功包含文件,

require_once将返回true。但它不会返回数组。因此,您应该编写以下代码,以便在其他文件中包含$config数组。换句话说,您可以通过webchat.php在其他文件中添加require_once行:

require_once base_path().'/config/webchat.php';
var_dump($config);
exit();

$path = __DIR__.'/../storage/webchat_tmp/';

$config = [
    'path'     => $path,
    /*
     * swoole 配置项(执行主动发消息命令必须要开启)
     */
    'swoole'  => [
        'status' => false,
        'ip'     => '127.0.0.1',
        'port'   => '8866',
    ]
];

执行php代码时,似乎是这样:

$path = __DIR__.'/../storage/webchat_tmp/';

$config = [
    'path'     => $path,
    /*
     * swoole 配置项(执行主动发消息命令必须要开启)
     */
    'swoole'  => [
        'status' => false,
        'ip'     => '127.0.0.1',
        'port'   => '8866',
    ]
];

var_dump($config);
exit();