0

私はフォームに配列を持っています

$array = array(
    name => array (
        [0] => peter,
        [1] => george,
        [2] => sarah
    ),
    age => array(
        [0] =>1,
        [1] =>2,
        [2] =>3
    )
)

テーブルに解析したいのですが、 foreach ループを使用すると、適切に出力できないようです。

私が使用する場合

foreach($array[name] as $name){
    foreach($array[age] as $age{

        echo $name.$age;
    }
}

一種のことで、各年齢で名前を出力し、次の名前に移動してから、3つの年齢すべてを実行し、次に最終年齢を実行します..

私が欲しい:

Name1 Age1 Name2 Age2 Name3 Age3

4

6 に答える 6

1
$array = array(
    'name' => array(
    0 => 'peter',
    1 => 'george',
    2 => 'sarah'
    ),
    'age' => array(
    0 =>'1',
    1 =>'2',
    2 =>'3'
    )
);

foreach($array['name'] as $key => $value)
{
    echo 'Name: ' . $value . ' - Age: ' . $array['age'][$key].'<br />';
}

編集:ああ、遅すぎる:)

于 2013-10-18T15:31:46.610 に答える
0
for ($i = 0; $i < count($array['name']); $i++) {    
   echo $array['name'][$i].$array['age'][$i];
}
于 2013-10-18T15:32:04.690 に答える
0

質問のコードは次のとおりです。

<?php
$array = array(
"name" => array (
0 => "peter",
1 => "george",
2 => "sarah"
),
"age" => array(
0 =>1,
1 =>2,
2 =>3
)
);
$name = $array['name'];
$age = $array['age'];


for($i=0;$i<count($name);$i++)
{
 echo $name[$i].' '.$age[$i].' ';
}
?>
于 2013-10-18T15:33:32.330 に答える
0

使用中:

$i=0;
$len=count($array['name']);
while($i<$len){
   echo $array['name'][$i].$array['age'][$i];
   ++$i;
}

事前計算を使用して、ループ内ではなく前にループの最大値を設定します。

マイクロ最適化のヒントについては、次の記事を参照してくださいhttp://labs.phurix.net/posts/50-php-optimisation-tips-revisited

于 2013-10-18T15:30:34.683 に答える