php運算符中優先級,PHP優先級

本文目錄一覽:

PHP運算符優先級

10-32 為最高優先級

相當於(10-32) ? 0 : true

而後 0 ? 5 : 3

0在計算機中被認為FLASE 因此答案是3

請給分,謝謝~

關於php 三元運算符的優先級問題。請教?

三元運算符的優先級是從右到左的,因此上面順序是:

$i = 2;

先運行:($i == 2 ? “A” : $i == 1)

然後再運行 (? ‘B’ : ‘C’;)

假設第一個運行的結果是 $ret 那麼$ret的值為A;

那麼第二個可以寫成

$ret?’B’:’C’;

因$ret的值為A,是真值,所以結果是B。

PHP 關於訪問控制的和運算符優先級介紹

這篇文章主要介紹了PHP中關於訪問控制的和運算符優先級介紹 需要的朋友可以參考下   複製代碼 代碼如下: class Foo {     private $name = hdj ;     public function getName(){         return $this name;     } } class Bar extends Foo {     public $name = deeka ; } $bar = new Bar; var_dump($bar name); var_dump($bar getName());

訪問控制

對屬性或方法的訪問控制 是通過在前面添加關鍵字 public protected 或 private 來實現的 由 public 所定義的類成員可以在任何地方被訪問 由 protected 所定義的類成員則可以被其所在類的子類和父類訪問(當然 該成員所在的類也可以訪問) 而由 private 定義的類成員則只能被其所在類訪問

複製代碼 代碼如下:

?php $a = ; $b = ; if($a = || $b = ){     echo $b br / ;     $a++;      $b++; } var_dump($a $b); echo br / $a = ( || $b = ) ;

echo hr / ; $a = ; $b = ; $c = ; if($a = || $b = $c = ){     $a++;      $b++; } var_dump($a $b $c); echo br / 比 || 高 ;

echo hr / ; $a = ; $b = ; $c = ; if($a = || $b = $c = ){     $a++;      $b++; } var_dump($a $b $c); echo br / ; echo hr / ;

lishixinzhi/Article/program/PHP/201311/20949

php邏輯優先級

在php中比較運算符(比如==)比邏輯運算符(比如 and )的優先級要高,

也就是說對於if($a and $b==1)是先判斷$b==1,再跟$a邏輯與。

php 優先級問題

php三元運算符的順序是從左向右的

原始 $a = $b $c ? ($c-$b) ? 1 : ($b-$c) 0 : ($b+$c) ? 0 : $b*$c;

先計算優先級高於三元運算符的

$a = 20 40 ? 20 ? 1 : -20 0 : 60 ? 0 : 800;

$a = 0 ? 20 ? 1 : 0 : 60 ? 0 : 800;

然後從左測第一個可執行的三元運算開始執行 20 ? 1 : 0 為 1

$a = 0 ? 1 : 60 ? 0 : 800;

再從左測第一個可執行的三元運算開始執行 0 ? 1 : 60 為 60

$a = 60 ? 0 : 800;

最終

$a = 0

為了避免工作中出現這種情況,建議避免出現比較長的三元運算表達式

php中的運算符優先級是什麼樣的

下表按照優先級從高到低列出了運算符。同一行中的運算符具有相同優先級,此時它們的結合方向決定求值順序。

運算符優先級

結合方向

運算符

附加信息

clone new

clone 和 new

[

array()

**

算術運算符

++

~

(int)

(float)

(string)

(array)

(object)

(bool)

@

類型和遞增/遞減

instanceof

類型

!

邏輯運算符

*

/

%

算術運算符

+

.

算術運算符和字符串運算符

位運算符

=

=

比較運算符

==

!=

===

!==

=

比較運算符

位運算符和引用

^

位運算符

|

位運算符

邏輯運算符

||

邏輯運算符

??

比較運算符

? :

ternary

right

=

+=

-=

*=

**=

/=

.=

%=

=

|=

^=

=

=

賦值運算符

and

邏輯運算符

xor

邏輯運算符

or

邏輯運算符

Example #1 結合方向

?php

$a = 3 * 3 % 5; // (3 * 3) % 5 = 4

// ternary operator associativity differs from C/C++

$a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2

$a = 1;

$b = 2;

$a = $b += 3; // $a = ($b += 3) – $a = 5, $b = 5

?

Operator precedence and associativity only determine how expressions

are grouped, they do not specify an order of evaluation. PHP does not

(in the general case) specify in which order an expression is evaluated

and code that assumes a specific order of evaluation should be avoided,

because the behavior can change between versions of PHP or depending on

the surrounding code.

Example #2 Undefined order of evaluation

?php

$a = 1;

echo $a + $a++; // may print either 2 or 3

$i = 1;

$array[$i] = $i++; // may set either index 1 or 2

?

Note:

儘管 = 比其它大多數的運算符的優先級低,PHP

仍舊允許類似如下的表達式:if (!$a = foo()),在此例中

foo() 的返回值被賦給了 $a。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/306663.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-02 12:01
下一篇 2025-01-02 12:01

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 條件運算符(?:)是什麼意思?

    條件運算符(?:)是JavaScript中的一種特殊的運算符,也是許多編程語言中相似語法的一部分。它可以允許我們在一個簡單、一行的語句中完成條件判斷和賦值操作,非常方便。 1.語法…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python中賦值運算符和相等運算符解析

    Python是一種高級編程語言,它通常被用於開發 Web 應用程序、人工智能、數據分析和科學計算。在Python中,賦值運算符和相等運算符是非常常見和基本的運算符,它們也是進行編程…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python中的算數運算符優先級問題

    本文將從多個方面詳細闡述Python中算數運算符的優先級問題,並給出對應代碼示例。算數運算符的優先級指的是在混合運算時,Python自動根據一定的優先級順序決定哪一個運算符先進行。…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • Python比較運算符

    Python中的比較運算符有六個,分別是等於(==)、不等於(!=)、大於(>)、小於(<)、大於等於(>=)、小於等於(<=)。本篇文章將從以下幾個方面詳…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27

發表回復

登錄後才能評論