我正在使用codeigniter并使用以下方法将信息从控制器传递到视图:
$this->load->view('myview', $data);
$ data是一个数组,定义为:
$data['people'] = ....
在我看来,将人们视为
foreach($people as $person) {
echo $person->name . " " . $person->email;
}
然后我有一个文件,它接受一个'person'对象数组,并根据它创建一个csv文件。
在我看来,我有一个指向此类文件的链接,并希望将$ people数组传递给它。
这样做的最佳方式是什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
在不可行和奇怪的链接中传递数组。
我建议您在链接中传递特定人员的 id
,然后
通过再次查询数据库来获取该人的数据。
例如:
<强>控制器强>
class People extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('people_model');
}
public function people()
{
$data['people'] = $this->people_model->get_people();
$this->load->view('myview', $data);
}
public function person_detail($person_id)
{
$person = $this->people_model->get_person($person_id);
// Now you have that person's detail
// Do whatever you want
// Write in a file
file_put_contents('filename.txt', print_r($person, true));
}
}
查看(myview.php)
<table>
<?php foreach($people as $person) { ?>
<tr>
<td><a href="/people/person_detail/{$person->id}"><?php echo $person->id ?></a></td>
<td><?php echo $person->name ?></td>
<td><?php echo $person->email ?></td>
</tr>
<?php } ?>
</table>