警告非法字符串偏移php

时间:2018-03-19 03:04:43

标签: php codeigniter

您好,我目前有一个错误,说非法字符串偏移,我已经在这里搜索我只知道如果您正在处理字符串,如果它是一个数组,但我确定我使用它任何人都可以帮助我谢谢

$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']);
            }

2 个答案:

答案 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