有时候学的多了, 好多小细节 都忘了 ,比如 简单的表达式,
三元表达式 ?:;
$aa or $bb 表达式
等等!
写一些简单的表达式,备忘!
php用&&和||缩写条件语句
看下面的这种写法:
<?php !$var && $var = ‘你好!’; $error or die(‘Error!’); ?>
&& 为 同时真 运算符.
A && B, 只有当A 和 B 都为真的时候,这句才是真
PHP会先判断A是否为真, 若A为真的话 就会继续判断B.
所以,当A为真, B是一个语句的时候, B就会运行.
同理,当A为假的时候, 这句一定是假, 就没有必要往后判断了, 此时, B就不会运行.
|| or 则不同
A or B, 只要A 或者B 中有一个是真, 这句就是真
PHP先判断A是否为真, 若A为真的话, 此句一定是真, 没有必要再去判断B
所以当A为假的时候, PHP会继续判断B是不是真, 才能得到这句的结果
此是, B如果是一个语句就会运行.
还记得入门时候那数据连接那句吗? 现在应该很好懂为什么加个OR了吧?
[php] mysql_connect($host,$user,$pwd) or die(‘Mysql Error!’); [/php]
如果连接失败,前面就是假, 后面的DIE就会运行咯!
再看下面的例子:
[php] $var = ”; !$var && echo “空的!”; !$var && print “空的!”; [/php]
哪个可以成功执行呢?
知道为什么吗?
这里附上echo和print的区别吧:
echo和print的区别
PHP中echo和print的功能基本相同,但是两者之间也有细微差别。在PHP代码中可以把print作为一个普通函数来使用,例如执行下面的代码后变量$res的值将为1。
1 |
<li>$ret = print \"Hello World\"; </li> |
这意味着print可用在一些复杂的表达式中,而echo则不行。同样,在代码中echo语句的运行速度要略微快于print语句,因为echo语句不要求返回任何数值。
时间: 2024-10-15 01:08:11