[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]
資料庫存的是這樣的資料 ['7','2'] 7代表產品id 2代表產品購買的數量
現在怎麼 還原成 php 能使用的陣列尼?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
屬於偷雞取巧的方法:當然,前提是你的數據都是完整的,不會有負數,NULL什麼的
$a = "[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]"; $result = array(); preg_match_all("/'(\d*)'/", $a, $matches); for ($i = 0; $i < count($matches[1]); $i += 2){ $result[(int)$matches[1][$i]] = (int) $matches[1][$i+1]; }
親測成功
你沒說具體格式,我就先採用下面這種格式了
$data = [['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]; $products = array(); foreach ($data as $tmp) { $products[] = array( 'id' => $tmp[0], 'total' => $tmp[1] ); } var_dump($products);
謝邀!
你這個就是數組,你直接循環好了:
$arr = [['7','2'],['8','2'],['11','2'],['11','2'],['11','2']]; var_dump($arr[0]);die;
這個陣列等同於:
$arr = array( array('7','2'), array('8','2'), array('11','2'), array('11','2'), array('11','2'), ); var_dump($arr[0]);die;
你這麼存進去的,再反解回來不就結了麼。
$str = json_encode(array( array(7, 2), array(8, 2), )); var_dump(json_decode($str));
標準json需要雙引號, 所以只要把單引號轉成雙引號, 再json_decode
$sqldata = "[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]"; $sqldata = str_replace('\'', '\"', $sqldata ); $data = json_decode($sqldata); echo $data[0][1]; // >> 2
$str = "[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]"; var_dump(eval('return '.$str.';'));
試試
雷雷
屬於偷雞取巧的方法:當然,前提是你的數據都是完整的,不會有負數,NULL什麼的
親測成功
你沒說具體格式,我就先採用下面這種格式了
謝邀!
你這個就是數組,你直接循環好了:
這個陣列等同於:
你這麼存進去的,再反解回來不就結了麼。
標準json需要雙引號, 所以只要把單引號轉成雙引號, 再json_decode
試試
雷雷