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

yipeiwu_com6年前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命名空间与自动加载类详解

本文实例讲述了PHP命名空间与自动加载类。分享给大家供大家参考,具体如下: 今天我要给大家介绍的是PHP的命名空间 和 自动加载类 我先简单的分开演示 在放在一起 大家请看: 什么是自动...

php_pdo 预处理语句详解

这篇文章主要介绍的是关于php_pdo 预处理语句,下面话不多说,我们来看看详细的内容。 一、预处理语句可以带来两大好处: 1、查询仅需解析(或预处理)一次,但可以用相同或不同的参数执行...

使用dump函数,给php加断点测试

复制代码 代码如下:function dump($var, $echo=true,$label=null, $strict=true){    $label...

php获取客户端电脑屏幕参数的方法

本文实例讲述了php获取客户端电脑屏幕参数的方法。分享给大家供大家参考。具体分析如下: 首先需要说明的是php是服务器端的语言,是获取不到客户端的屏幕的宽度和高度的。但是有变通的方法就是...

php中的抽象方法和抽象类

1、什么是抽象方法? 我们在类里面定义的没有方法提的方法就是抽象方法。所谓的没有方法体指的是,在声明的时候没有大括号以及其中的内容,而是直接在声明时在方法名后加上分号结束,另外在声明抽象...