PHP字符串的递增和递减示例介绍

yipeiwu_com5年前PHP代码库
今天看到php手册上有这么一段话:

“在处理字符变量的算数运算时,PHP 沿袭了 Perl 的习惯,而非 C 的。例如,在 Perl 中 $a = 'Z'; $a++; 将把 $a 变成'AA',而在 C 中,a = 'Z'; a++; 将把 a 变成 '['('Z' 的 ASCII 值是 90,'[' 的 ASCII 值是 91)。注意字符变量只能递增,不能递减,并且只支持纯字母(a-z 和 A-Z)。递增/递减其他字符变量则无效,原字符串没有变化。”

也就是说:
复制代码 代码如下:

for($i = 'A'; $i <= 'Z'; $i++) {
echo $i;
//if( $i == 'ZZZ') die();
}

结果是:ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUA…………

还有字符串变量不能递减:
复制代码 代码如下:

$a = 'Z';
--$a;
echo $a; // Z

这也说明了$a++或++$a,不能要 $a = $a + 1;来解释
复制代码 代码如下:

$a = $b = 'Z';
$a = $a + 1;
echo $a; //1
++$b;
echo $b; //AA

相关文章

PHP中error_reporting()函数的用法(修改PHP屏蔽错误)

今天学习CI框架过程中遇到个问题: A PHP Error was encountered Severity: Notice Message: Undefined variable: u...

php SQL防注入代码集合

SQL防注入代码一复制代码 代码如下: <?php /** * 防sql注入 * @author: zhuyubing@gmail.com * */ /** * reject sq...

php的4种常用运行方式详解

php的4种常用运行方式:CGI、FastCGI、APACHE2HANDLER、CLI。 1、CGI CGI即通用网关接口(common gatewag interface),它是一...

php断点续传之文件分割合并详解

php实现断点续传,就需要把大文件分割成多个小文件,然后单个上传。传完后在合并。 │ merge.php –合并文件脚本 │ merge.zip –合并后文件 │ socket.zi...

php 中self,this的区别和操作方法实例分析

本文实例讲述了php 中self,this的区别和操作方法。分享给大家供大家参考,具体如下: 面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人...