2017-03-17 21 views
1

ここではこの配列でビットが失われています。できれば軽いものが必要です。foreachループによって生成された静的配列を変換する

私の状況は:アレイから静的なデータをforeachによって生成されたものに変更します。

静的なPHPコードの例は以下の通りです:

$p->data = array(
    array(
     array("A",148), //value_1 for letter A 
     array("B",238), //value_1 for letter B 
     array("C",151) //value_1 for letter C 
     ), 
    array(
     array("A",238), //value_2 for letter A 
     array("B",338), //value_2 for letter B 
     array("C",285) //value_2 for letter C 
     ), 
    array(
     array("A",278), //value_3 for letter A 
     array("B",138), //value_3 for letter B 
     array("C",205) //value_3 for letter C 
     ) 
); 

私の問題は、次のとおりです。私はforeachのと同じ結果を生成しようとすると、私はそれが間違ってやっている..私はすでに、ネストされた試してみましたforeachの者と何を取得(またはあまりにも間違ったことをやって)が、これは私が必要とする結果から届く最も近い:

foreach($result as $reg){ 
    $p->data = array(
     array(
      array($reg['letters'],$reg['value_1']) 
     ), 
     array(
      array($reg['letters'],$reg['value_2']) 
     ), 
     array(
      array($reg['letters'],$reg['value_3']) 
     ) 
    ); 
}; 

は代わりに、私は右の値を持つ最初の文字だけを取得します。他の文字を表示するために "$ p-> data []"を使用しても動作しません。

のvar_dump()私は上記のコードから取得する以下の通りです:あなたが見たよう

array(3) { 
    [0]=> array(1) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(148) } 
     } 
    [1]=> array(1) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(238) } 
     } 
    [2]=> array(1) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(278) } 
     } 
} 

、最初の変数「文字」は配列に由来しています。データベースから値を取得...イムを使用してforeachのイムで:コードをExplaing

array(3) { 
    [0]=> array(3) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(148) 
     } 
     [1]=> array(2) { 
      [0]=> string(1) "B" 
      [1]=> int(238) 
     } 
     [2]=> array(2) { 
      [0]=> string(1) "C" 
      [1]=> int(151) 
     } 
    } 
    [1]=> array(3) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(238) 
     } 
     [1]=> array(2) { 
      [0]=> string(1) "B" 
      [1]=> int(338) 
     } 
     [2]=> array(2) { 
      [0]=> string(1) "C" 
      [1]=> int(285) 
     } 
    } 
    [2]=> array(3) { 
     [0]=> array(2) { 
      [0]=> string(1) "A" 
      [1]=> int(278) 
     } 
     [1]=> array(2) { 
      [0]=> string(1) "B" 
      [1]=> int(138) 
     } 
     [2]=> array(2) { 
      [0]=> string(1) "C" 
      [1]=> int(205) 
     } 
    } 
} 

:私はこのような人を、必要とします。各変数「文字」には3つの変数「値」があります。私がしようとしているのは、各配列上で区切られた各レターの同じ変数値を表示することです。

誰かが正しい方向に向かうことができますか?すべてありがとうございます/

答えて

0

$ reg ['letters']とは何ですか? $ resultはどこから来たのですか?

あなたは文字の配列が必要で、それを繰り返す必要があります。ちょっとした情報があれば、私は例を挙げることができます。

+0

$ reg ['letters'] --- 'letters'はデータベースの列です。私はforeachを使用して、SQL文の結果からすべての文を読み込みます。 '手紙はこの結果の一部です。 –

+0

$ result [0] ['letters'] = 'ABC' ;; 'value_1'、 'value_2'、 'value_3'がある場合は、 'letter_1'、 'letter_2'、 'letter_3'を使用できませんか? – digibucc

+0

$ result [0] ['letters']は結果から最初の文字を取得します.... –

関連する問題