Rumah > Soal Jawab > teks badan
[0]=>
tatasusunan(5) {
["id"]=>
rentetan(1) "2"
["title1"]=>
rentetan(6) "warna"
["content1"]=>
rentetan(4) "Merah 2"
["title2"]=>
rentetan(6) "saiz"
["content2"]=>
rentetan(2) "XL"
}
[1]=>
tatasusunan(5) {
["id"]=>
rentetan(1) "1"
["title1"]=>
rentetan(6) "warna"
["content1"]=>
rentetan(4) "Merah 1"
["title2"]=>
rentetan(6) "saiz"
["content2"]=>
rentetan(1) "L"
}
[2]=>
tatasusunan(5) {
["id"]=>
rentetan(1) "3"
["title1"]=>
rentetan(6) "warna"
["content1"]=>
rentetan(4) "Merah 3"
["title2"]=>
rentetan(6) "saiz"
["content2"]=>
rentetan(3) "XXL"
}
Dihimpun seperti ini
tatasusunan(5) {
["title1"]=>
rentetan(6) "warna"
["content1"]=>
tatasusunan(5) {
["id"]=>
rentetan(1) "2"
["content1"]=>
rentetan(4) "Merah 2"
["id"]=>
rentetan(1) "1"
["content1"]=>
rentetan(4) "Merah 1"
["id"]=>
rentetan(1) "3"
["content1"]=>
rentetan(4) "Merah 3"
}
["title2"]=>
rentetan(6) "saiz"
["content2"]=>
tatasusunan(5) {
["id"]=>
rentetan(1) "2"
["content2"]=>
rentetan(4) "XL"
["id"]=>
rentetan(1) "1"
["content2"]=>
rentetan(4) "L"
["id"]=>
rentetan(1) "3"
["content2"]=>
rentetan(4) "XXL"
}
}
phpcn_u15822017-05-16 13:09:30
Ada masalah pada bahagian yang subjek nak pasang. Ambil content1
sebagai contoh:
['content1'] => [
'id'=>2,
'content1'=>'红2',
'id'=>1,
'content1'=>'红1',
'id'=>3,
'content1'=>'红3',
]
Dengan cara ini, hanya data dengan id 3 boleh dikekalkan.
Saya rasa apa yang penyoal perlukan adalah ini:
['content1'] => [
['id'=>2,'content1'=>'红2'],
['id'=>1,'content1'=>'红1'],
['id'=>3,'content1'=>'红3'],
]
Jadi, "inilah cara penulisan yang paling sampah dalam sejarah", saya cadangkan anda menjalankan sendiri kod berikut.
Tatasusunan asal:
$arr = [
['id'=>2,'title1'=>'颜色','content1'=>'红2','title2'=>'尺码','content2'=>'XL'],
['id'=>1,'title1'=>'颜色','content1'=>'红1','title2'=>'尺码','content2'=>'L'],
['id'=>1,'title1'=>'颜色','content1'=>'红3','title2'=>'尺码','content2'=>'XXL']
];
Kod yang saya tulis:
$newArr = [];
foreach($arr as $k=>$v)
{
$keyArr = array_keys($v);
$valueArr = array_values($v);
foreach($keyArr as $key=>$val)
{
if((strstr($val, 'title') || strstr($val, 'content')) && !array_key_exists($val, $newArr))
$newArr[$val] = strstr($val, 'title') ? $valueArr[$key] : [];
if(strstr($val, 'content'))
{
foreach($arr as $ke=>$va)
{
$newArr[$val][$ke]['id'] = $va['id'];
$newArr[$val][$ke][$val] = $va[$val];
}
}
}
}
Saya tidak berbakat, kod tidak ditulis dengan baik, saya harap anda boleh memaafkan saya, tolong jangan tampar muka saya.
世界只因有你2017-05-16 13:09:30
Bagaimana ia harus dipasang? Apabila saya bertanya soalan, anda tidak dapat menerangkannya dengan jelas