以下のような配列があります。PHPで配列を2次元配列に分割する方法
$arr=array('0_1','0_3','1_2',1_1','4_1');
私は
$arr[0][1]='0_1';
$arr[0][3]='0_3';
... おかげに分割することができます。
以下のような配列があります。PHPで配列を2次元配列に分割する方法
$arr=array('0_1','0_3','1_2',1_1','4_1');
私は
$arr[0][1]='0_1';
$arr[0][3]='0_3';
... おかげに分割することができます。
$newArray = [];
foreach ($arr as $item) {
$items = explode('_', $item);
$newArray[$items[0]][$items[1]] = $item;
}
var_dump($newArray);
exit();
これはトリックを行う必要があります。 explode function
おかげであなたの試みを投稿してみましたが何をしています。出来た。 –
foreach
ループなしでこれを行う別の方法です。 : - >
$arr = array('0_1','0_3','1_2','1_1','4_1');
$result = [];
array_walk($arr,function($v,$k)use (&$result){
$data = explode("_",$v);
$result[$data[0]][$data[1]] = $v;
});
print_r($result);
あなたのソリューションをありがとう。しかし、最初の解決策はより読みやすく、シンプルであるようです。 –
$arrv = array('0_1','0_3','1_2','1_1','4_1');
$newArray = [];
array_walk($arrv,function($value,$key){
global $newArray;
$indexArray = explode("_",$value);
$newArray[$indexArray[0]][$indexArray[1]] = $value;
});
var_dump($newArray);
あなたがこれまであまりにも –