<?php
$str = 'hello';
echo $str{0}, "\n",$str{1}, "\n";
echo "{$str}dawd-$str{1}";
输出
h
e
hellodawd-hello{1}
$str{1}可以取出单个字符串
"{$str}8421"隔开变量名
---------------------------------------------------
数组创建
<?php
$a = array(
'a',
3 => 'b',
1 => 'c',
'e'=>66,
'd',
0 => '0',
null => 'a',
true => 'b',
false => 'c',
'' => 'f'
);
var_dump($a);
输出结果为:
array(6) {
[0]=>
string(1) "c"
[3]=>
string(1) "b"
[1]=>
string(1) "b"
["e"]=>
int(66)
[4]=>
string(1) "d"
[""]=>
string(1) "f"
}
字符串a已经消失了 被 0替换
字符串d的键 = 取最大的数字键 +1
注:键名将被这样转换:null 转为(空字符串),true 转为 1,false 转为 0。
----------------------------------------------------------------------
通常我们都知道 false值有以下几种情况
null、false、‘’、0、[]、
<?php
$var = '0';
if ($var) {
echo 'true';
} else {
echo 'false';
}
'0'同样是输出false
-----------------------------------------------------------------------------------
<?php
$RESULT = 11 + 011 + 0x11;
echo "$RESULT";
通常我们会以为 011 = 11 其实错误了
注:十进制加八进制加十六进制数,11 + 9 + 17 = 37
------------------------------------------------------------------------------
<?php
if ('2' == '02') {
echo 'true';
} else {
echo 'false';
}
PHP有毒,,自动化转 居然都不判断类型就 最大化识别匹配
注:php数值字符串作为整数进行比较。
----------------------------------------------------------
"222";
null;
php允许无用语句
--------------------------------------------------------
define('EEE',[1,2,3]);
报错
备注:只有(布尔值、整数、浮点数和字符串)可以包含在常量中
----------------------------------------------------------------