分離して多次元配列を作成したい文字列があります。文字列は次のようになります。
$string = "item-size:large,color:blue,material:cotton,item-size:medium,color:red,material:silk,";
残念ながら、文字列がどのように組み合わされるかを制御することはできません。そのため、この配列を作成しようとしています。
私の目標は、次のような配列を作成することです。
$item[1]['color'] // = blue
$item[2]['material'] // = silk
だから、これが私がやったことです:
$item = array();
$i=0; // I know this is messy
$eachitem = explode("item-",$string);
array_shift($eachitem); // get rid of the first empty item
foreach ($eachitem as $values) {
$i++; // Again, very messy
$eachvalue = explode(",",$values);
array_pop($eachvalue); // get rid of the last comma before each new item
foreach ($eachvalue as $key => $value) {
$item[$i][$key] = $value;
}
}
私は明らかにこれで迷っています...何か提案はありますか?