3

テーブルを作成するための100〜200のルールのコードを取得しました。しかし、ずっと同じように起こっています。変数$xm3を取得してから、列を作成します。次の行では、$xm2を取得して列を作成します。次の行では、$xm1を取得して列を作成します。

したがって、私の変数は$ xm3、$ xm2、$ xm1、$ xm0、$ xp1、$ xp2、$xp3になります。

$ xmを埋めて、その後forループの値を入力できるようにforループを作成する方法はありますか?

4

5 に答える 5

3

この種の構造では、これらの種類の値に配列を使用する方がよいでしょうが、ループを作成してそれらを通過させたい場合は、次のようになります。

for($i = 0; $i <= 3; $i++) {
    $var = 'xm' . $i
    $$var; //make column stuff, first time this will be xm0, then xm1, etc.

}
于 2010-05-27T15:55:43.303 に答える
2

あなたが求めていることは完全には明確ではありませんが、できることはあります

$xm = 'xm3';
$$xm // same as $xm3

PHP で、類似した名前の変数をループできるようにします。(これは、そうするべきだという意味ではありません。配列を使用することは、通常、優れた代替手段です。)

于 2010-05-27T15:50:21.240 に答える
1

私の知る限り、異なる変数名を使用することはできません。

ただし、以下のように配列を使用する場合

$xm[3] = "";
$xm[2] = "";
$xm[1] = "";
$xm[0] = "";

あるいは単に$xm[] = "";

次に、for each ループを使用できます。

foreach($xm as $v) { echo $v; }

編集: Google で検索しただけで、変数名を使用してこれを行うことは可能ですが、不適切な方法と見なされます。配列を学んで使おう!

于 2010-05-27T15:49:23.990 に答える
0

可変変数を使用してこれを行うことができますが、通常は、代わりに配列でこの種のことを行う方が適切です。

もしあなたがこの方法でそれをやりたいと確信しているなら、そして 'y' が for ループのあなたのカウンターの値であるなら:

${'xm' . $y} = $someValue;
于 2010-05-27T15:49:11.553 に答える
0

次のようなことが簡単にできます。

$base_variable = 'xm';

次に、その場で変数を作成するループを作成できます。例えば:

for ($i=0; $i<10; $i++)
{
  $def_variable = $base_variable . $i;
  $$def_variable = 'value'; //this is equivalent to $xm0 = 'value'
}
于 2010-05-27T16:01:31.263 に答える