php中“foo()”和“@foo()”的区别:“@foo()”是错误控制输出,其所有错误会被忽略,“foo()”是正常调用输出。“@”是错误抑制符,当放在一个php表达式之前,该表达式的所有错误报告会被忽略。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
运算符考察点 Foo()和@foo()的区别
@foo() 是错误控制输出,foo()是正常调用输出。
@是错误抑制符;当放在一个php表达式之前,该表达式的所有错误会被忽略;
@符号在PHP 中可以忽略错误报告,对于表达式有提示错误的,但有不影响语句执行的,可以在表达式之前加@。
立即学习“PHP免费学习笔记(深入)”;
可以把@符号放在变量、函数和include() 调用、常量等之前,但不能把@放在函数、类的定义之前,也不能用于条件结构语句之前
eg:if 、switch、while、for和foreach等
延伸:PHP所有运算符考点
1) PHP运算符优先级(从高到低)
递增 / 递减!算术运算符大小比较(不)相等比较引用位运算符(^)位运算符(|)逻辑与逻辑或三目赋值andxoror
注:括号的使用可以增加代码可读性,推荐使用
2) 比较运算符:== 和 ===的区别
== 比较值是否相等; === 比较值是否相等,类型是否相同。等值判断(FALSE的七种情况)
if (’== false’) {
echo ‘’;
} elseif (‘0’ == 0) {
echo ‘’;
} elseif (0.0 == 0) {
echo ‘’;
}
注:
FALSE的七种情况都满足:整型 0浮点型 0.0零字符串 ‘0’空字符串 ‘’ “空数组 array()null布尔型 false
3) 递增/递减运算符
递增/递减运算符不影响布尔值;true++; // truetrue–; // truefalse++ ; // falsefalse–; // false递减NULL值没有效果;递增NULL值为1;NULL–; // NULLNULL++; // 1递增和递减在前,就先运算,后返回;反之就先返回,后运算
4) 逻辑运算符
① 短路作用
$a = true || $b == 3; // 前面是 true,后面不会执行【|| : 一真为真】$b = false && $a == 1; // 前面是 false,后面不会执行【&&:一假为假】
登录后复制
② || 和 && 与 or 和 and 的优先级不同
// 先执行 false || true,得到 true,再赋值给 $a$a = false || true; // $a = true;// 先执行 $b = false,整体为 true,则 $b的值为 false$b = false or true; // $b = false;
登录后复制
推荐学习:《PHP视频教程》
以上就是php中foo()和@foo()的区别是什么的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2516142.html