最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php中and 和 &&出坑指南

 更新時(shí)間:2018年07月13日 08:54:25   作者:努力的C  
在邏輯運(yùn)算符中,提到與和或,我們可能立刻想到的是&&、||,在php中還有and、or.然而and和or中有一個(gè)小小的坑,今天我們就來(lái)探討下php中and 和 &&

我原來(lái)以為PHP中的and和&&是一樣的, 只是寫(xiě)法上為了可讀性和美觀, 事實(shí)上我錯(cuò)了. 這里面深藏了一個(gè)坑!
看以下代碼:

$bA = true;
$bB = false;
$b1 = $bA and $bB;
$b2 = $bA && $bB;
var_dump($b1); // $b1 = true
var_dump($b2); // $b2 = false
$bA = false;
$bB = true;
$b3 = $bA or $bB;
$b4 = $bA || $bB;
var_dump($b3); // $b3 = false
var_dump($b4); // $b4 = true

奇怪吧, and/&&和or/||出來(lái)的結(jié)果竟然不一樣的. 問(wèn)題出在哪里呢?
我們?cè)倏匆欢未a!

$bA = true;
$bB = false;
var_dump($bA and $bB); // false
var_dump($bA && $bB); // false
$bA = false;
$bB = true;
var_dump($bA or $bB); // true
var_dump($bA || $bB); // true

更奇怪, 這時(shí)怎么是對(duì)的. 所以問(wèn)題可能出現(xiàn)在=上, 一番google和文檔,終于找到了答案!

運(yùn)算符優(yōu)先級(jí)

通過(guò)這個(gè)表, 我們可以看到 and/&& 和 or/|| 這兩組運(yùn)算符的優(yōu)先級(jí)竟然是不一樣的. and和or的優(yōu)先級(jí)是低于=的, 所以上面的代碼就好理解了, 就是先做賦值然后再做了一個(gè)and或or的邏輯運(yùn)算, 這個(gè)運(yùn)算的結(jié)果并沒(méi)有存下來(lái). 所以最后出來(lái)讓我們匪夷所思的結(jié)果.

結(jié)合性 運(yùn)算符 額外信息
無(wú)結(jié)合性 clone new 克隆和new
[ 數(shù)組
** 算術(shù)
++ — ~ (int) (float) (string) (array) (object) (bool) @ 類(lèi)型和自增/自減
無(wú)結(jié)合性 instanceof 類(lèi)型
! 邏輯運(yùn)算
* / % 算術(shù)
+ – . 算術(shù)和字符串
<< >> 按位運(yùn)算
無(wú)結(jié)合性 < <= > >= 比較運(yùn)算
無(wú)結(jié)合性 == != === !== <> 比較運(yùn)算
& 按位運(yùn)算和引用
^ 按位運(yùn)算
| 按位運(yùn)算
&& 邏輯運(yùn)算
| | 邏輯運(yùn)算
?: 三元條件選擇
= += -= *= /= .= %= &= = ^= <<= >>= => | 賦值
and 邏輯運(yùn)算
xor 邏輯運(yùn)算
or 邏輯運(yùn)算
, 很多使用

相關(guān)文章

  • JavaScript關(guān)鍵字this的用法總結(jié)

    JavaScript關(guān)鍵字this的用法總結(jié)

    這篇文章介紹了JavaScript關(guān)鍵字this的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • javaScript對(duì)象和屬性的創(chuàng)建方法

    javaScript對(duì)象和屬性的創(chuàng)建方法

    javaScript對(duì)象和屬性的創(chuàng)建方法...
    2007-01-01
  • js閉包的用途詳解

    js閉包的用途詳解

    js閉包可以用在許多地方。它的最大用處有兩個(gè),一個(gè)是前面提到的可以讀取函數(shù)內(nèi)部的變量,另一個(gè)就是讓這些變量的值始終保持在內(nèi)存中。具體怎么理解呢,各位看官請(qǐng)仔細(xì)看好下文
    2014-11-11
  • 告訴你什么是javascript的回調(diào)函數(shù)

    告訴你什么是javascript的回調(diào)函數(shù)

    在javascript中回調(diào)函數(shù)非常重要,它們幾乎無(wú)處不在。像其他更加傳統(tǒng)的編程語(yǔ)言都有回調(diào)函數(shù)概念,但是非常奇怪的是,完完整整談?wù)摶卣{(diào)函數(shù)的在線教程比較少,倒是有一堆關(guān)于call()和apply()函數(shù)的,或者有一些簡(jiǎn)短的關(guān)于callback的使用示例。
    2014-09-09
  • 淺談開(kāi)發(fā)eslint規(guī)則

    淺談開(kāi)發(fā)eslint規(guī)則

    這篇文章主要介紹了淺談開(kāi)發(fā)eslint規(guī)則,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • 淺談js中的bind

    淺談js中的bind

    這篇文章主要介紹了js中的bind應(yīng)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • TypeScrip中泛型的案例詳解

    TypeScrip中泛型的案例詳解

    這篇文章主要介紹了TypeScrip中泛型的案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • javascript中的throttle和debounce淺析

    javascript中的throttle和debounce淺析

    這篇文章主要介紹了javascript中的throttle和debounce淺析,分別介紹了throttle和debounce的使用場(chǎng)景及具體案例,需要的朋友可以參考下
    2014-06-06
  • 關(guān)于Js中new操作符的作用詳解

    關(guān)于Js中new操作符的作用詳解

    這篇文章主要給大家介紹了關(guān)于關(guān)于Js中new操作符作用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評(píng)論

平邑县| 新密市| 彭州市| 平阳县| 海林市| 郴州市| 高淳县| 民和| 喀什市| 凌源市| 桂阳县| 衡南县| 乐东| 南京市| 青神县| 南安市| 河池市| 新竹市| 济阳县| 罗平县| 江川县| 长治市| 仁化县| 绿春县| 化隆| 鸡西市| 望江县| 邵武市| 太湖县| 朝阳县| 盐池县| 朝阳市| 镇坪县| 隆安县| 彝良县| 泰宁县| 白河县| 密山市| 庆城县| 磴口县| 望城县|