一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP下對字符串的遞增運算代碼

有同學問了一個問題:
復(fù)制代碼 代碼如下:
<?php
for($i = 'A'; $i <= 'Z'; $i++) {
echo $i;
}
//輸出是啥?

輸出是:
復(fù)制代碼 代碼如下:
ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAS…….


為啥?

其實很簡單, php的手冊中也有說明, 只不過恐怕很多人不會一章一節(jié)的把手冊仔細閱讀一遍:
復(fù)制代碼 代碼如下:
php follows Perl's convention when dealing with arithmetic operations on character variables and not C's. For example, in Perl ‘Z'+1 turns into ‘AA', while in C ‘Z'+1 turns into ‘[‘ ( ord(‘Z') == 90, ord(‘[‘) == 91 ). Note that character variables can be incremented but not decremented and even so only plain ASCII characters (a-z and A-Z) are supported.

在處理字符變量的算數(shù)運算時,php 沿襲了 Perl 的習慣,而非 C 的。例如,在 Perl 中 ‘Z'+1 將得到 ‘AA',而在 C 中,'Z'+1 將得到 ‘[‘(ord(‘Z') == 90,ord(‘[‘) == 91)。注意字符變量只能遞增,不能遞減,并且只支持純字母(a-z 和 A-Z)。

也就是說, 如果:
復(fù)制代碼 代碼如下:
$name = "laruence";
++$name; //將會是"laruencf"

而:
復(fù)制代碼 代碼如下:
$name = "laruence";
--$name; //沒有影響, 還是"laruence"

所以, 這個問題的原因就是當$i = Z的時候, ++$i成了AA, 而字符串比較的話,
AA,BB,XX一直到Y(jié)Z都是小于等于Z的… so..

作者: laruence

php技術(shù)PHP下對字符串的遞增運算代碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 免费不卡毛片 | 91亚洲精品视频 | 国内精品线在线观看 | 免费黄在线看 | 在线观看一二三区 | 婷婷激情五月网 | 国产福利在线观看 | 中日韩新区 | 黄色免费在线观看视频 | 久久精品亚洲精品国产色婷 | 国产图片区 | 高清视频一区二区三区 | 97国产成人精品免费视频 | 久久久免费网站 | 四虎成人4hutv影院 | 日韩一区二区视频在线观看 | 五月激情丁香婷婷综合第九 | 国产精品香蕉在线一区 | 亚州怡红院 | 亚洲第一综合网 | 亚洲综合激情小说 | 中文字幕一二区 | 69视频在线观看 | 亚洲伦理一区二区 | 天天做天天爱夜夜爽女人爽宅 | 38pao强力打造永久免费高清视频 | 999色综合| 亚洲国产综合精品中文字幕 | 久久精品国产夜色 | 1024cc香蕉视频 | 免费国产叼嘿视频在线观看 | 青青草国产97免久久费观看 | 国产精品国产 | 亚洲一区二区三区网站 | 亚洲午夜国产精品无卡 | 亚洲最大色视频 | 国产日韩欧美综合一区二区三区 | 婷婷综合激情 | 72成人网| 日本老年人精品久久中文字幕 | 亚洲精品女同中文字幕在线 |