【发布时间】:2010-08-23 05:36:27
【问题描述】:
我正在使用 codeIgniter,我正在尝试传递一个数据数组。我是这样写的:
$data['username']="Dumbo";
我也写了这个:
$data['shouts']=$this->Musers->getShout(); // retrieve data from table
然后我写:
$this->load->view("welcome_message", $data);
在视图页面中,我写道:
<?php echo $username;
foreach ($shouts as $shout)
{
echo $shout->shout;
echo '<br>';
echo $shout->timeStamp;
}
?>
问题是,虽然视图确实从表中检索数据并在视图页面中显示结果,但 $data['username'] 出现错误:
“未定义变量:用户名”
这是为什么呢? $data['username'] 已经定义好了!还是我做错了什么?
【问题讨论】:
-
"username" in $data['username'] 是索引,而不是变量。
-
@Maris 这是 codeigniter 的工作方式,您将数组加载到视图文件,然后将索引称为变量...@netrox 我在这里没有看到任何问题,请检查您是否拥有所有变量名和文件名拼写正确
-
$data['username'] 是否与 $data['shouts'] 冲突或什么?我不明白为什么它一直说 $username 未定义,但回显 $shouts 数组没有问题。
-
不,它不会与任何你可以拥有任意数量的 $data 变量的东西冲突,只要它们有不同的索引,$shouts 不是一个数组,$data 是数组,而喊叫是只是在视图文件中“成为”变量的索引......也许你可以尝试发布所有代码,这样你可能会得到更多帮助。祝你好运!
标签: php arrays codeigniter view