【发布时间】:2014-01-22 11:19:05
【问题描述】:
嘿,我在帖子上提交了一个数组,其中每个值都是一个 json 字符串,如下所示:
Array
(
[destinations] => Array
(
[0] => {"selected_value":185,"destinations":38709,"type":"cl","name":"name1"}
[1] => {"selected_value":395,"destinations":28867,"type":"cl","name":"name2"}
)
)
现在当我解码它时:
foreach($destinations as $json){
$row = json_decode($json,true);
...
}
它工作正常,但是如果我尝试在目的地上运行表单验证:
$this->form_validation->set_rules('destinations', 'Destinations', 'required');
我不能再json_decode这个值了,强硬好像没问题,如果我呼应一下就可以看到:
{"selected_value":395,"destinations":28867,"type":"cl","name":"name2"}
但解码不起作用,$row 为空。
运行json_last_error 给出:4
$json 的 var_dump 给出:
string(143)
"{"selected_value":185,"destinations":38709,"type":"cl","name":"07h00 תקינים"}"
注意:名称值是希伯来语,我用英文给出了一个例子,这样更容易阅读。
我尝试通过创建自定义回调函数来解决它,因为我认为 required 的实现是问题,但我得到了相同的结果。 有谁知道这个错误或/以及如何修复它? 我知道我可以定期检查它,但我宁愿使用 CI 的表单验证。 我正在使用 codeigniter 2.1.3,没有升级选项。
【问题讨论】:
标签: php json codeigniter