2

別の変数の名前にカウンター変数の内容を追加する方法がわかりません。配列を使用することで問題をよりエレガントに解決できることに気づきましたが、変数名にカウンターを使用したいと思います。

これまでのところ、私のコードは次のようになっています。

    <?php
        $f2 = bla2;
        $f3 = bla3;

...。

        $f13 = bla13;
        $f14 = 0;
        echo $f2;
        for($j = 3; $j <= 14; ++$j){
        if (!empty('$f'.$j)){
        echo(', ');
        eval('print $f'.$j.';');
        };
     };
     ?>

$ fごとに出力を出し、エコーする前に空かどうかを確認したいと思います。forループは、if条件を追加する前にすでに機能していました。このコードは現在のように機能しないため、if条件内で変数に正しく名前を付けておらず、その方法がわかりません。

また、if条件をforループに含めることができるかどうかも知りたいです。私はすでにこれらの質問に解決策を適用しようとしました

変数名の一部としてカウンターを使用して変数にアクセスします

変数の最後にカウンターを追加しますか?

変数の一部としてカウンターを使用する

しかし、これまでのところ成功していません。たぶん誰かがここで私の間違いを見つけます。

4

1 に答える 1

5

このようなものが機能するはずです:

for ($i = 3; $i <= 14; ++$i) {
    if (empty(${"f$i"})) {
        ${"f$i"} = ${"bla$i"}();
    }
}

${"f$i"}肝心なのは、変数変数を見つけるために使用できるということです。

于 2013-01-29T14:56:03.877 に答える