Php 为什么是2a0++;等于2a1,但等于2e0++;等于3?
代码:Php 为什么是2a0++;等于2a1,但等于2e0++;等于3?,php,Php,代码: $a=“2c0”; 对于($i=0;$i是 2 < /代码>的科学符号。所以 2 + 1=3 < /代码>。您应该真正考虑不混合数据类型!有一个非常好的 /r/LoLPHP 线程解释这个 2E0是 2 < /代码>的科学符号。所以 2 + 1=3 < /代码>。您应该真正考虑不混合数据类型。锿! $a = "2c0"; for($i = 0; $i < 25; $i++) { print "$a "; $a++; }
$a=“2c0”;
对于($i=0;$i<25;$i++){
打印“$a”;
$a++;
}
输出:
2c0
2c1
2c2
2c3
2c4
2c5
2c6
2c7
2c8
2c9
2d0
2d1
2d2
2d3
2d4
2d5
2d6
2d7
2d8
2d9
2e0
3.
4.
5.
六,
为什么,php?
2e0
被解释为2*10^0
(请参阅)这是2。因此,下一个值将是3。2e0
被解释为2*10^0
(请参阅),即2。因此,手册中的下一个值为3。:
PHP在处理字符变量的算术运算时遵循Perl的约定,而不是C。例如,在PHP和Perl中$a='Z'$a++;将$a转换为'AA',而在C中a='Z';a++;将a转换为“[”(ASCII值“Z”为90,ASCII值“[”为91)。请注意,字符变量可以递增,但不能递减,即使如此,也只支持普通ASCII字母和数字(a-Z、a-Z和0-9)。递增/递减其他字符变量无效,原始字符串不变
在“2c0”上使用++
运算符会导致PHP增加字符串值,因此“2c1”。“2e0”被视为科学符号,即2*10^0=2
,因此,从手册中增加得出3
:
PHP在处理字符变量而不是C的算术运算时遵循Perl的惯例。例如,在PHP和Perl中,$a='Z';$a++;将$a转换为'AA',而在C中,='Z';a++;将a转换为'['(ASCII值'Z'为90,'['为91)。请注意,字符变量可以递增,但不能递减,即使如此,也只支持普通ASCII字母和数字(a-z、a-z和0-9)。递增/递减其他字符变量无效,原始字符串不变
在“2c0”上使用
++
运算符会导致PHP增加字符串值,从而增加“2c1”。“2e0”被视为科学符号,即,2*10^0=2
,因此递增即得到3
参见此博客帖子:-它解释了问题并链接了php文档以供参考。参见此博客帖子:-它解释了问题并链接了php文档以供参考。有一个非常好的/r/lolphp
线程“<代码> 2E0< /代码>是<代码> 2 < /代码>的科学符号。所以<代码> 2 + 1=3 < /代码>。您应该真正考虑不混合数据类型!有一个非常好的<代码> /r/LoLPHP 线程解释这个<代码> 2E0<代码>是<代码> 2 < /代码>的科学符号。所以<代码> 2 + 1=3 < /代码>。您应该真正考虑不混合数据类型。锿!
$a = "2c0";
for($i = 0; $i < 25; $i++) {
print "$a ";
$a++;
}