1.echo 的逗号和点号:echo 是php的语言结构,不是函数,输入多个变量的时候用“,”。不需要占用更多的内存。
2.用i+=1代替i=i+1,可用php的vld第三方扩展 查看执行opcode代码
3.用isset代替strlen
$subject = "hello world";
if(!isset($subject[12])){ echo ‘subject too short’,PHP_EOL;} //PHP_EOL 换行 判断字符串的第12个是否存在
常见的php语言结构(不是函数) 优先级比函数高 执行效率也比函数高,语言结构是不能当成函数来用的
例子:$e = 'echo' ; $e 'hello !' // 会报错
echo() 、print() 、 die() 、 isset() 、 unset() 、 include() 、 include_once() 、 require() 、 require_once() 、 array() 、 empty() 、 eval()
4.用strstr 代替str_replace
$subject = "hello world";
strstr($subject,'world','Limei'),PHP_EOL //
5.PHP 用yield实现协程 (用协程的好处是减少内存)
6.用“[]” 来定义数组
7.使用“**” 进行幂预算 例如 5 的 6 次方 5**6 或者是 pow(5,6)
8.函数赋值默认参数: “+” 运算符
9. ??运算符 // php7.0 支持
$username = $_GET['username'] ?? 'nobody' // PHP7.0 以后支持 当$_GET['username'] 为真时,直接返回$_GET['username'] 当条件为假时 返回nobody
10. <=> 比较运算符
语法:$c = $a <=> $b; 如果$a > $b,$c 的值为1 ;如果$a == $b,$c 的值为0; 如果$a < $b,$c 的值为-1
相当于 $c = $a > $b ? 1 :($a == $b ?0 :-1);