我正在使用一段很好的短代码将我的xml字符串转换为php数组
$products = json_decode(json_encode(simplexml_load_string($products_xml)),TRUE);
一切正常,除非当我得到一个空数组而不是字符串时xml字段为空 - 并且当写入我的SQL数据库时,我看到字符串'数组'而不是空场。
有没有一个很好的方法用PHP做到这一点?
与此同时,我设法用这段代码解决了问题:
$products = json_decode(str_replace('{}', '""', json_encode(simplexml_load_string($products_xml))),TRUE);
答案 0 :(得分:0)
如果json_encoded xml中的任何内容字段包含" {}",则此代码将中断。它发生在我身上,我正在制定一个解决方案来防止这种情况。
答案 1 :(得分:0)
function removeElementArrays($array) {
$temp = [];
foreach ($array as $record){
$ta = [];
foreach ($record as $k=>$v) {
if (is_array($v)) {
$ta[$k]='';
} else {
$ta[$k]=$v;
}
}
array_push($temp, $ta);
}
return $temp;
}