`
swincle
  • 浏览: 78670 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php=操作符的优先级问题

    博客分类:
  • PHP
 
阅读更多

 

$a = '1';
$b = '2';
$c = '3';
($a == $b || !$c = '4' || $c = '5') && $c = '6';
echo $c;

!$c = '4' || $c = '5' 表达式等价于!$c = ('4' || $c = '5')并等价于false,PHP手册有一句话:

Although = has a lower precedence than most other operators, PHP will still allow expressions similar to the following: if (!$a = foo()), in which case the return value of foo() is put into $a.

因此结果为1

 

分享到:
评论

相关推荐

    php 操作符与控制结构

    当需要组合复杂的条件判断时,开发者可以根据操作符优先级和结合性来书写表达式,避免逻辑错误。如果不确定优先级,也可以使用括号 `()` 来明确操作顺序,确保代码按照期望的方式运行。 理解并掌握这些PHP操作符和...

    php学习笔记(三)操作符与控制结构

    在PHP中,操作符还具有特定的优先级和结合性。优先级决定了表达式中操作符的计算顺序,结合性则决定了同优先级操作符在表达式中的计算顺序。为了避免优先级带来的混淆,可以通过添加括号来改变正常的计算顺序。 三...

    第三章 php操作符与控制结构代码

    在PHP编程语言中,操作符和控制结构是编写程序的核心元素。它们允许程序员对变量进行数学运算、逻辑判断以及控制程序流程。以下是对【标题】和【描述】中提到的知识点的详细说明: ### 一、字符串插入 PHP中的字符...

    基于PHP编程注意事项的小结

    1. **隐性的三元操作符优先级问题**: PHP中的三元操作符`?:`有时可能会引发混淆,特别是在与其他运算符结合使用时。例如,`$person = $who or $person = "laruence";`实际上相当于`$person = empty($who)? ...

    PHP学习 运算符与运算符优先级

    错误抑制操作符`@`用于阻止错误消息被显示出来。 **示例代码**: ```php <?php $a = @(5 / 0); // 抑制除以零的警告 ?> ``` #### 运算符优先级 运算符优先级决定了表达式的计算顺序。PHP中的运算符按照以下顺序...

    汇总PHP编程注意事项.doc

    1. **三元操作符的优先级问题**: PHP中的三元操作符 `?:` 有其特定的运算优先级。在例1中,表达式 `$person = $who or $person = "laruence"` 实际上相当于 `$person = empty($who)? "laruence" : $who;`。这是...

    【自学PHP】第三课:PHP运算符

    * 错误控制符:`@` 例如: ```php ]intData_11 = 11; echo @($intData_11 / 0); ``` 九、运算符优先级 在 PHP 中,运算符优先级从高到低依次是: 1. 乘除法运算符 2. 加减法运算符 3. 赋值运算符 4. 比较运算符...

    php面试题及答案

    - **字符串拼接**:PHP中,可以用`.`操作符或`implode()`函数拼接字符串,但`+`操作符不适用于字符串。 - **字符串处理**: - `substr()`:从字符串中提取子串。 - `strpos()`:查找字符串首次出现的位置。 - `...

    PHP从基础到高级(日文版)

    - 变量在字符串中的展开:使用`.`操作符将变量与字符串连接,变量值会自动插入到字符串中。 3. 数值与四则运算 - 数值字面量:整数、浮点数等数值的表示方式。 - 四则运算:PHP支持加法(+)、减法(-)、乘法...

    PHP正则表达式完全教程之提高篇

    php正则表达式的各种操作符的运算优先级 相同优先级的从左到右进行运算,不同优先级的运算先高后低。各种操作符的优先级从高到低如下: 操作符 描述 转义符 (), (?:), (?=), [] 圆括号和方括号 *, +, ?, {n}, {n,}, ...

    PHP 可变参数

    3. **优先级问题** - 如果一个函数既有可变参数,又有常规参数,那么可变参数总是位于最后。例如,`function test($fixed, ...$variable)`,在调用`test('fixed', 'var1', 'var2')`时,'var1'和'var2'会被放入`$...

    PHP MYSQl 开发规范

    - 可以分成多行编写,考虑以低优先级的操作符进行段落的换行,并注意缩进。 - 示例: ```php for ($i = 0; $j = 0; ($i > $mySpecialString[$thisStringWidth]) && ($j > $mySpecialString[$thisStringHeight]);...

    可编程计算器(PHP)

    1. **词法分析**:将用户输入的计算命令分解为一个个符号(tokens),如数字、操作符、括号等。 2. **语法分析**:使用上下文无关文法(Context-Free Grammar, CFG)定义计算器支持的语法,并构建解析树,确保用户...

    PHP和MySQL Web开发第4版pdf以及源码

    1.12 理解操作符的优先级和结合性: 1.13 使用可变函数 1.13.1 测试和设置变量类型 1.13.2 测试变量状态 1.13.3 变量的重解释 1.14 根据条件进行决策 1.14.1 if语句 1.14.2 代码块 1.14.3 else语句 1.14.4 ...

    php-op-checker

    【php-op-checker】是一款专为PHP开发者设计的工具,用于检查PHP代码中的操作符使用情况。这款工具的目的是帮助开发者提升代码质量,确保代码的正确性和一致性,从而避免潜在的运行时错误。通过分析代码,它能检测出...

    PHP3程序设计

    3.4.1 操作符的优先级 32 3.4.2 三重操作符 33 3.4.3 算术操作符 34 3.4.4 条件操作符 35 3.4.5 一元操作符 35 3.4.6 位操作符 37 3.4.7 字符串连接操作符 38 3.4.8 逻辑操作符 38 3.4.9 赋值操作符 40 3.5 总结 41 ...

    php.ini中文详解

    - **逻辑操作符**:包括 `|`(或)、`&`(与)、`~`(非)和 `!`(取反)。 - **布尔值**:`On` 表示开启,`Off` 表示关闭。 #### 特殊说明 - **默认值**:若配置项未设置,则采用默认值。 - **环境变量覆盖**:...

    PHP工程师面试笔试真题(某知名监控产品服务商)-附解析.doc

    选项A(strpos)用于查找字符串中特定字符的位置,选项B(==操作符)仅适用于简单比较,不考虑大小写,而选项D(strcmp)则区分大小写。 2. 无法将两个字符串$s1和$s2串联成一个单独的字符串的表达式是A.$s1+$s2,...

Global site tag (gtag.js) - Google Analytics