当我要插入数据库时出错。
我有这个数组:
当我print_r($学生)时,它的结构如下:
数组([0] => stdClass对象([lastname] => en [firstname] => estudianten [代码] => U0009876 [id_estud] => 5)[1] => stdClass对象([lastname] => Euno [firstname] => estudiante | [code] => U00020814 [id_estud] => 6))
在我的模型中,我有这段代码:
function insert_register_students($students) {
foreach ($students as $student) {
foreach ($student['dates'] as $key => $value) {
$data = array(
'field1' =>$student['id'],
'field2' => $key,
'field3' => '',
);
$this->db->insert('mytable', $data);
}
}
}
在模型中,如何引用$ students是stdClass对象?如果$ students是一个数组但现在有stdClass对象,那么模型中的最后一个代码对我来说效果很好。
我的错误是什么?
感谢您的帮助。
答案 0 :(得分:1)
你可以这样做:
foreach ($students as $student) { echo $student->lastname; //and so on }
希望有所帮助
答案 1 :(得分:1)
实际上你有一个stdObject数组。在foreach中的每次迭代中,您都可以处理一个对象。因此,如果您想访问其属性,则必须执行
'field1' => $student->property,
而不是
'field1' => $student['property']