您好,我目前有一个错误,说非法字符串偏移,我已经在这里搜索我只知道如果您正在处理字符串,如果它是一个数组,但我确定我使用它任何人都可以帮助我谢谢
$data2 = array('EquipmentName' => $this->input->post('txt_equipb'),
'EquipmentType' => $this->input->post('txt_equiptype'),
'RequirementID' => $id2);
foreach($data2 as $d) {
$data2s = array('EquipmentName' => $d['EquipmentName'],
'EquipmentType' => $d['EquipmentType'],
'RequirementID' => $d['RequirementID']);
}
答案 0 :(得分:1)
你误解了foreach的意思。(叹气)
建议提供:
在分配$ data2s之前var_dump($d);
,你就会知道结果。在foreach中,正如您所看到的,每个$ d只是$ data2的值部分,这意味着在$ data2s的每个赋值中,没有键作为'EquipmentName',只有一个简单的字符串。
答案 1 :(得分:0)
如果你只是循环一次将数组值设置为变量,你可以简单地这样做而不使用foreach循环。
$data2 = array('EquipmentName' => $this->input->post('txt_equipb'),
'EquipmentType' => $this->input->post('txt_equiptype'),
'RequirementID' => $id2);
$data2s = $data2;
print_r( $data2s ); // check if has values