早上好,
我正在尝试了解 php 中的文件包含是如何工作的。今天,我遇到了一个我无法解决的问题。这是我的场景:
同一目录下的文件:
- config.php
- db.php
- functions.php
- form.php
配置文件
<?php
$config['json_file'] = 'test.json';
函数.php
<?php
function writeInFile()
{
echo $config['json_file']; // just for debugging porpuses
file_put_contents($config['json_file'], json_encode(time()));
}
模型.php
<?php
class Model{
public function __construct();
function create()
{
writeInFile();
}
}
表单.php
<?php
include('config.php');
include('functions.php');
include('model.php');
$model = new \Model();
$m->create();
当我执行form.php
我得到这个错误:
警告:file_put_contents() [function.file-put-contents]:functions.php 中的文件名不能为空
我知道发生这种情况是因为在functions.php中var$config['json_file']
为null 。writeInFile()
但是,理论上它应该有效,因为我是在 form.php 的开始时进行包含的。还是我错了?