2012-04-14 6 views
0

データベースからフェッチする「入れ子になった」配列を構築しています。ここに私のスクリプトは次のとおりです。ネストした配列の親キーを取得する

while ($row_rsMaster = mysql_fetch_assoc($rsMaster)) { 
    $numbers[] = array("Page "); 
} 

私は次の配列(しますprint_r()関数)を取得したいのですが、私はページ番号を取得する方法について完全にこだわっている:

Array 
(
    [0] => Array 
     (
      [0] => Page 1 
      [1] => 1 
     ) 

    [1] => Array 
     (
      [0] => Page 2 
      [1] => 2 
     ) 

    [2] => Array 
     (
      [0] => Page 3 
      [1] => 3 
     ) 


    [3] => Array 
     (
      [0] => Page 4 
      [1] => 4 
     ) 

) 

私は試してみました:

$numbers[] = array("Pagina " . key($numbers)+1, key($numbers)+1); 

が、それは期待される結果をもたらさなかった

(私の心の中で、それは1によって「親」配列と増分の現在のキー番号を取得する必要があります)

お願いします。事前

+0

なぜあなたは同じ配列$ numbers []にページ番号を入れていますか? –

+0

私はjsonにその配列をエンコードして、次のようなsometingを取得する必要があります:[["Page 1"、1]、["Page 2"、2]、["Page 3"、3]] – Ivan

答えて

2

で おかげでちょうどあなた自身によってカウント:

$n = 0; 
while ($row_rsMaster = mysql_fetch_assoc($rsMaster)) { 
    $n++; 
    $numbers[] = array("Page ".$n, $n); 
} 

それとも、あなたのコードでcount($numbers)+1を使用します。私は最終的にこれに来たdatacompboyへ

while ($row_rsMaster = mysql_fetch_assoc($rsMaster)) { 
    $numbers[] = array("Page ".(count($numbers)+1), count($numbers)+1); 
} 
+0

ありがとう、カウンターがありますが、カウンターレスのソリューションがあるのか​​どうか疑問に思っていました...可能でしょうか? – Ivan

+0

さて、カウント($数値)を得ると、あなたはまだカウンターを使います。 phpの内部ですが、まだそこにあります。 – datacompboy

+0

ええ、私たちはほとんどそこにいる! "Pagina" .count($ numbers)+1が数字で変換されていることを除いて、2番目の解決策ではすべて問題ありません...奇妙な – Ivan

0

ありがとう:

while ($row_rsMaster = mysql_fetch_assoc($rsMaster)) { 
    $counter = count($numbers)+1; 
    $numbers[] = array("Page " . $counter, $counter); 
} 
関連する問題