国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP字符變量奇怪現(xiàn)象的解釋

2024-05-04 21:50:12
字體:
供稿:網(wǎng)友

首先神奇的PHP是支持字符數(shù)據(jù)類型的,有同學(xué)就寫了這樣一段代碼:

  1. for ($c = 'a'$c <= 'z'$c++) { 
  2.  echo $c . ' '

然而結(jié)果卻不是他想要的a到z

  1. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai 
  2. aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh 
  3. bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg 
  4. ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df 
  5. dg dh di dj dk dl dm dn do dp dq dr ds dt du dv dw dx dy dz ea eb ec ed ee 
  6. ef eg eh ei ej ek el em en eo ep eq er es et eu ev ew ex... on to yz 

實現(xiàn)a到z的打印有N多的辦法,比如說如下幾種

  1. for ($i = 'a'$i != 'aa'$i++) 
  2.  echo $i . ' '
  3.  
  4. for ($i = ord('a'); $i <= ord('z'); $i++) 
  5.  echo chr($i) . ' '
  6.  
  7. echo implode(' ', range('a''z')); 

但我們還是要解釋上面打印的那一堆是什么鬼?

這是因為在處理單個字符變量的算術(shù)操作時,PHP沿襲了Perl的用法而非C的。

在Perl中

$a = 'Z';

$a++; //'AA'

在C中

a = 'Z';

a++;  //'['   因為'Z' 的 ASCII 值是 90,'[' 的 ASCII 值是 91

注意字符變量只能遞增,不能遞減,并且只支持純字母(a-z 和 A-Z),如下可見:

  1. $a="9F9"
  2. $b="9F9"
  3. var_dump(++$a); //"9G0" 
  4. var_dump(--$b); //"9F9"  不變 

然后有寫成這樣的同學(xué)哭了

$a = "9E0";

var_dump(++$a);  // float(10)

#這TM又變成科學(xué)計數(shù)法了啊。。。

PHP從來不按套路出牌啊!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 和平区| 左贡县| 南澳县| 介休市| 柯坪县| 宿松县| 马龙县| 阳山县| 宽甸| 舒城县| 沙洋县| 永春县| 金门县| 射洪县| 巫山县| 吕梁市| 南部县| 浮山县| 安义县| 永德县| 固始县| 浦城县| 江川县| 柘荣县| 宁国市| 凤阳县| 丹东市| 闵行区| 维西| 通海县| 奉新县| 道真| 泾源县| 留坝县| 绥中县| 仪征市| 丰城市| 富阳市| 东海县| 武义县| 英超|