php变量定义但未定义

时间:2015-03-18 07:42:23

标签: php cakephp

在我的cakephp(1.3)应用程序的控制器中,我设置了几个数组变量,当在视图中我将它们打印到错误日志时,它们被定义并显示它们的值。另外,当我记录$ this-> viewVars时 - 我看到了所有相关的变量,没有什么是错的。但是,当我尝试将这些变量作为选项传递给表单输入时,

<?php echo $this->Form->input('ages', array('options' => $ages)); ?>

它抱怨变量$ ages是未定义的 - 与其他数组变量一样。

任何人都可以深入了解这里可能发生的事情吗?我不明白如何将变量记录在一行上但是接下来它们被视为未定义? (注意PHP版本是5.3.20 - 应用程序是旧的)这是命名空间,范​​围等问题吗?

1 个答案:

答案 0 :(得分:0)

首先,您需要更改代码:

发件人:

<?php echo $this->Form->input('ages', array('options' => $ages)); ?>

<?php
$opts=array('ages' => $ages);
echo $this->Form->input($opts); 
?>

您可以通过以下方式访问年龄:

$opts['ages'];