ZF2使用Zend \ Config \ Factory

时间:2016-06-13 10:12:15

标签: zend-framework zend-framework2

我尝试使用Zend \ Config \ Factory:

在php文件中为数组添加新值
public function testFunc($testParam)
{
    $testArray = $this->testFunc1($testParam);

    if(!is_null($testArray[1])) {
         foreach ($testArray[1] as $array) {
             $this->testFunc($array);
        }
    }

    $filename = getcwd() . '/data/config/config.php';
    $configFile = \Zend\Config\Factory::fromFile($filename);

    $configFile[] = $testArray[0];

    if(!\Zend\Config\Factory::toFile($filename, $configFile)) {
        throw new Exception\RuntimeException("Can't put content to $filename.");
    }

    return true;
}

问题是$filename文件只保存第一个函数调用的值而不是递归。

[UPDATE]

我调试\Zend\Config\Factory::fromFile并发现我是否要加载php文件,函数加载文件:

  ........
  $config = include $filepath;

在递归\Zend\Config\Factory::toFile更新我的php文件(我检查config.php文件)然后在第一个函数调用\Zend\Config\Factory::fromFile再次获取php文件而不进行更改并覆盖config.php。因此,仅记录config.php中第一个函数调用的值。

0 个答案:

没有答案