0

私は何年もphpでプログラミングしていますが、厄介な問題に遭遇し、なぜそれが起こったのかわかりません. 私は何かが足りないと思いますが、私の脳は機能を停止しています! お尻があります。配列を var_dump() すると、次のようになります。

 array
  0 => 
    array
      4 => string '12' (length=2)
  1 => 
    array
      2 => string '10' (length=2)
  2 => 
    array
      1 => string '9' (length=1)

これらの値を配列 (12, 10, 9) に格納するなど、これらの値を使用して何かをしたいのですが、それを取得する方法がわかりません! foreach()、array_value() をテストしましたが、結果はありません。私が何をしても、var_dump() の結果は同じです! ちなみに、私はcodeigniterフレームワークを使用していますが、論理的にはフレームワークとは何の関係もないはずですありがとう

4

5 に答える 5

1

使用してみることができますarray_map

$array = array(
        0 => array(4 => '12'),
        1 => array(2 => '10'),
        2 => array(1 => '9'));

$array = array_map("array_shift", $array);
var_dump($array);

出力

array
  0 => string '12' (length=2)
  1 => string '10' (length=2)
  2 => string '9' (length=1)
于 2012-10-04T21:17:37.783 に答える
0

次のようにアクセスできます。

$array[0][4]= '13'; 
$array[1][2]= '11'; 
$array[2][1]= '10'; 

var_dump($配列); 次の結果が得られます。

    array(3) { 
      [0]=> array(1) { 
         [4]=> string(2) "13" } 
      [1]=> array(1) { 
         [2]=> string(2) "11" } 
      [2]=> array(1) { 
         [1]=> string(2) "10" } 
    }
于 2012-10-04T21:16:43.827 に答える
0

このような:

for ($i = count($array) ; $i >= 0 ; $i--) {
    foreach($array[$1] as $k => $v) {
        echo $k . "=>".$v;
    }
}
于 2012-10-04T21:18:04.440 に答える
0

それらを配列にまとめたい場合は、配列を宣言してから、アイテムを反復処理します。

$arr = new array();

foreach ($arrItem in $yourArray) {
  foreach ($innerArrItem in $arrItem) {
    array_push($arr, $innerArrItem);
  }
}

print_r($arr);
于 2012-10-04T21:18:44.473 に答える
0

深さが不明な場合は、次のようなことができます。

$output = array();
array_walk_recursive($input, function($value, $index, &$output) {
    $output[] = $value;
}, $output);
于 2012-10-04T21:21:13.317 に答える