誰かがContinueワードでこの奇妙な動作に気付いたことがありますか? Ifステートメント内で使用すると、テンプレート内の次のコードをすべて終了させるようです。cffript/odd動作のIFブロック内のキーワードcoldfusion continue
などでCFとLuceeでこれをテストした:
<cfscript>
writeoutput('test1, loop<br>');
for (x = 0; x > 5; x++) {
writeoutput(' gonna continue?');
continue;
writeoutput('continued within');
}
writeoutput('Out of loop..<br><br>');
writeoutput('test2, if<br>');
oURL = true;
if (oURL) {
writeoutput(' gonna continue?');
continue; // seems to kill all following code
writeoutput('continued within');
}
writeoutput(' out of If..');
writeoutput(' end');
for (x = 0; x > 5; x++) {
writeoutput('loop:' & x);
}
</cfscript>
Continueはループ内で残りのコードの処理を中止します。私に正しく働いているようだ。ドキュメントhttp://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec0a0e0-7fdf.html#WSc3ff6d0ea77859461172e0811cbec0a0e0-7fe7 –
@Scp - FWIW、私は同じ結果を見ますが、興味があります、ブロックを再構築するのではなく、ifステートメント内で「続行」しますか?通常、continueはループで動作するように設計されています。ループの外側で使用されたときに期待される動作が何であるかはわかりません... – Leigh
'continue'または' break'を使ってサイドループを使うと、次のループがないので 'abort'のように動作します。 – RRK