[['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
试试
雷雷