1

answer-1、answer-2、answer-3 などの名前の変数を 10 個作成したいと考えています。変数を作成するような方法で for ループを使用できますか?そうでない場合はどうすればよいですか?

<?php
for(i=1;i<=10;i++){
$answer_+i=new array();
}
?>
4

3 に答える 3

2

PHP構文がすべて間違っています(はい、いくつか$のsを見逃し、余分に追加しましたnew)。次の構文を使用して作成できます。その呼ばれる変数変数

for($i=1;$i<=10;$i++){
    ${"answer_$i"} = array();
}

ただし、これには配列を使用することをお勧めします。配列の方が便利です。

for($i=1;$i<=10;$i++){
    $answer[$i] = array();
}

ここにあなた$answer_1がなります$answer[1]。明示的なインデックスを使用しないのが最善です

for($i=1;$i<=10;$i++){
    $answer[] = array();
}

$answer_1になります$answer[0]。あなたはそれをループすることができます、、、for多くforeach配列関数を使うことができます。

于 2013-01-12T14:44:18.657 に答える
0

次のような多次元配列の使用を検討する必要があります。

$answers = array(
  1 => array(),
  2 => array()
);

... また ...

for($i=1;$i<=10;$i++)
  $answers[$i] = array();
于 2013-01-12T14:49:13.670 に答える
0

別の回答に記載されているように実行できますが、通常は次の方法が適しています。

<?php
$answers = array();
for($i=1;$i<=10;$i++){
$answers[]= array("blah", "123");
}
?>

したがって、次の方法で回答#4にアクセスできます。

<?php
$answers = array();
for($i=1;$i<=10;$i++){
$answers[]= array("blah", $i);
}
echo $answers[3] //array indexes start at 0!
?>
于 2013-01-12T14:47:37.073 に答える