我有以下代码段,我是codeigniter的新手。
在模型中,我将返回一个数组,如下所示
$data[$i] = $query->result_array;
$i++;
return $data;
控制器:
public function getcity()
{
$this->getstate();
$result1 = $this->result;
//$result1=$this->getstate();
$this->load->model('test_model');
$resultdata = $this->test_model->getcity($result1);
var_dump($resultdata);
$output['query']=$resultdata;
$this->load->view('test_view', $output);
}
在查看:
中 <?php foreach($query as $val => $row):?>
<a href="link" style="color:#FF0000" > </a>
<?php echo $row['city_name']."<br />";?>
<?php endforeach;?>
模型中返回数组的 vardump
如下所示,与分配给控制器中数组时的数组值相同
array (size=27)
0 =>
array (size=1)
0 =>
array (size=1)
'city_name' => string 'Dundee' (length=9)
1 =>
array (size=1)
0 =>
array (size=1)
'city_name' => string 'Edinbrough' (length=7)
2 =>
array (size=1)
0 =>
array (size=1)
'city_name' => string 'Oxford' (length=6)
3 =>
array (size=1)
0 =>
array (size=1)
'city_name' => string 'AAAA' (length=5)
使用上面的观看代码,我收到错误:
遇到PHP 错误
Severity: Notice Message: Undefined index: city_name Filename: views/test_view.php
Line Number: 9
请告诉我在哪里更改代码段。
答案 0 :(得分:1)
$data[$i];
不需要$i
,因为$data
会自动充当数组。你可以写
$data = $query->result_array;
If you use `$i` it acts as a multidimensional array.
In that case you go with $row[0]['city_name'];