我正在尝试对一个字符串进行多次分割,并将结果转换为有效的JSON格式,但我无法找到方法。我试过对字符串进行分割并使用foreach对每个分割后的子串进行操作,但都没有成功。
$str='ID=62981155;IT=OV80419674-62981155_1_3;OD=15.4;|ID=62981157;IT=OV80419674-62981157_1_3;OD=3.1;|ID=62981159;IT=OV80419674-62981159_1_3;OD=8.13;|';
$array = explode(';|',$str);
foreach($array as $key => $val)
{
$v = explode(";",$val);
foreach($v as $v1)
{
$v2= explode("=",$v1);
foreach($v2 as $k => $s)
{
$u[] = $s;
}
}
}
echo json_encode($u);
现在我得到的结果是: ["ID","62981155","IT","OV80419674-62981155_1_3","OD","15.4","ID","62981157","IT","OV80419674-62981157_1_3","OD","3.","ID","62981159","IT","OV80419674-62981159_1_3","OD","8.13",""]
期望的结果是: [{"ID":62981155,"IT":"OV80419674-62981155_1_3","OD":15.4},{"ID":62981157,"IT":"OV80419674-62981157_1_3","OD":3.1},{"ID":62981159,"IT":"OV80419674-62981159_1_3","OD":8.13}]