在 PHP 中,for循環(huán)以for (init counter; test counter; increment counter)這可以形成很長的線。將它分解成較短部分的最佳方法是什么?例子:for ($currentLine = fgets ($fileToAnalyse); ! preg_match("^0 @Individual ", $currentLine); $currentLine = fgets($fileToAnalyse)) {/*...*/}
1 回答

月關(guān)寶盒
TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊
我認(rèn)為對于具體示例,您使用了錯(cuò)誤的循環(huán)。您不知道需要迭代多少次,因此,正確的循環(huán)應(yīng)該是while。你也不會(huì)有太長的線的問題。
$currentLine = fgets($fileToAnalyse);
while(!preg_match("^0 @Individual ", $currentLine)) {
// code...
$currentLine = fgets($fileToAnalyse);
}
通常使用 for 循環(huán)你幾乎不會(huì)得到很長的行,因?yàn)樗畛S糜谝阎螖?shù)的確定迭代。
但是為了縮短for循環(huán),你可以做一些奇怪的事情,比如在第一行之外導(dǎo)出變量的定義(我不推薦),比如:
$currentLine = fgets ($fileToAnalyse);
for (;! preg_match("^0 @Individual ", $currentLine);) {
/*...*/
$currentLine = fgets($fileToAnalyse)
}
- 1 回答
- 0 關(guān)注
- 177 瀏覽
添加回答
舉報(bào)
0/150
提交
取消