Rumah > Soal Jawab > teks badan
[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]
Inventori data adalah seperti ini ['7','2'] 7 mewakili id produk dan 2 mewakili kuantiti produk yang dibeli
Sekarang bagaimana untuk memulihkannya kepada tatasusunan yang boleh digunakan oleh php?
滿天的星座2017-06-08 11:03:38
Ini kaedah yang rumit: Sudah tentu, premisnya ialah data anda lengkap dan tidak akan ada nombor negatif, NULL atau apa-apa seperti itu
$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];
}
Ujian peribadi berjaya
大家讲道理2017-06-08 11:03:38
Anda tidak menyebut format tertentu, jadi saya akan menggunakan format berikut dahulu
$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);
淡淡烟草味2017-06-08 11:03:38
Terima kasih atas jemputan!
Ini ialah tatasusunan, anda boleh gelungkan sahaja:
$arr = [['7','2'],['8','2'],['11','2'],['11','2'],['11','2']];
var_dump($arr[0]);die;
Susun atur ini bersamaan dengan:
$arr = array(
array('7','2'),
array('8','2'),
array('11','2'),
array('11','2'),
array('11','2'),
);
var_dump($arr[0]);die;
phpcn_u15822017-06-08 11:03:38
Jika anda mendepositkannya seperti ini, maka ia akan berakhir jika anda membuat asal semula.
$str = json_encode(array(
array(7, 2),
array(8, 2),
));
var_dump(json_decode($str));
迷茫2017-06-08 11:03:38
Json standard memerlukan petikan berganda, jadi cuma tukar petikan tunggal menjadi petikan berganda dan kemudian 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
女神的闺蜜爱上我2017-06-08 11:03:38
$str = "[['7','2'],['8','2'],['11','2'],['10','2'],['9','2']]";
var_dump(eval('return '.$str.';'));
Cubalah