-2

このコードを置き換えたい:

$html=<<<EOF

    <p>{${$var[i]}[name]}</p>
    <p>{${$var[i+1]}[name]}</p>
    <p>{${$var[i+2]}[name]}</p>
    <p>{${$var[i+3]}[name]}</p>

EOF;

このようなもので:

$html=<<<EOF

    <p>{${$var[new_i]}[name]}</p>
    <p>{${$var[new_i]}[name]}</p>
    <p>{${$var[new_i]}[name]}</p>
    <p>{${$var[new_i]}[name]}</p>

EOF;

コードの最初の部分の機能を保持します。

それは可能ですか?

4

4 に答える 4

5

レスキューへのポストインクリメント!

$html=<<<EOF

    <p>{${$var[$i++]}[name]}</p>
    <p>{${$var[$i++]}[name]}</p>
    <p>{${$var[$i++]}[name]}</p>
    <p>{${$var[$i++]}[name]}</p>

EOF;

ただし、この直後に表示する場合は、次$htmlのようにする方がよい場合があります。

<?php for($i = 0; $i < $max_i; ++$i):?>
<p><?php echo ${$var[$i]}[name] ?></p>
<?php endfor;?>
于 2012-07-20T18:01:26.640 に答える
4

ここでインクリメンターが登場します。

$i++アクションが実行されると、値が 1 増加します。

++$iアクションが実行される前に、値が 1 ずつ増加します。

 $html=<<<EOF

     <p>{${$var[$i++]}[name]}</p>
     <p>{${$var[$i++]}[name]}</p>
     <p>{${$var[$i++]}[name]}</p>
     <p>{${$var[$i++]}[name]}</p>

EOF;

例:

$i = 0;
echo $i++; // echo's 0

$i = 0;
echo ++$i; // echo's 1
于 2012-07-20T18:01:41.333 に答える
2

i++表示されるたびにインクリメントするように渡すことができます。

于 2012-07-20T18:01:33.680 に答える
-2
$new_i = 0;

$html=<<<EOF

    <p>{${$var[$new_i]}[name]}</p>
    <p>{${$var[++$new_i]}[name]}</p>
    <p>{${$var[++$new_i]}[name]}</p>
    <p>{${$var[++$new_i]}[name]}</p>

EOF;

変数の左側を使用++すると、その変数が使用される前に値が 1 増加します。

于 2012-07-20T18:01:43.877 に答える