自動遞增我只是給了這樣的回答:https://stackoverflow.com/a/25688064/2627459爲了遍歷字母組合,用下面的代碼:爲什麼這個for循環比較失敗後的字母
for ($letter = 'a'; ; ++$letter) {
echo $letter . '<br>';
if ($letter == 'zz') break;
}
這僅僅是工作的罰款。
然後我試圖將break
移動到for
循環比較,認爲這將是更好:
for ($letter = 'a'; $letter < 'zz'; ++$letter) {
echo $letter . '<br>';
}
不過,當然,最後的值(zz
)沒有顯示,所以我嘗試:
for ($letter = 'a'; $letter < 'aaa'; ++$letter) {
echo $letter . '<br>';
}
而且我不知道爲什麼,但它給了我下面的輸出:
a
所以我試了幾個項目,以及(怪異)的結果是:
項:$letter < 'yz'
- 輸出:最高y
只
項:$letter < 'zzz'
- 輸出:最高zzy
我當鏈條以z
開頭時,不明白它爲什麼會起作用,但在任何其他情況下(字母)都會失敗。
更改,在$letter < 'aaa'
的情況下,它顯示a
,但不是下一個。在最壞的情況下,我會預料它會失敗a < 'aaa'
等顯示沒有什麼。但不是。
那麼,這種行爲來自哪裏,我錯過了如何比較這些值的東西?
(我不是在尋找一個解決辦法,但一個解釋順便說一句,如果任何解釋配備了一個工作代碼,它是完美的!)
坎,在某些時候,我試過'$信!= 'AAA' '但它不起作用,這就是我採用if-break解決方案的原因。一個錯誤的肯定...無論如何,感謝您的鏈接,我無法自己找到這個。令人困惑的概念imho! – Sugar 2014-09-05 15:51:47