日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開源 > php教程 > Php入門教程之PHP 運(yùn)算符用法說(shuō)明

Php入門教程之PHP 運(yùn)算符用法說(shuō)明

來(lái)源:程序員人生   發(fā)布時(shí)間:2013-10-14 08:07:50 閱讀次數(shù):4609次

在php中運(yùn)算符是我們程序開發(fā)中最基本的一個(gè)知識(shí)點(diǎn)了,下面我來(lái)給各位同學(xué)介紹在php中PHP 運(yùn)算符一的些常用用法介紹.

PHP 運(yùn)算符

PHP 運(yùn)算符主要包括:

1.算術(shù)運(yùn)算符

2.賦值運(yùn)算符

3.比較運(yùn)算符

4.三元運(yùn)算符

5.邏輯運(yùn)算符

6.字符串運(yùn)算符

7.錯(cuò)誤控制運(yùn)算符

算術(shù)運(yùn)算符

運(yùn)算符 說(shuō)明 例子 運(yùn)算結(jié)果 

+ 加 $x = 2;

$y = $x+1; $y = 3 

- 減 $x = 2;

$y = $x-1; $y = 1 

* 乘 $x = 2;

$y = $x*3; $y = 6 

/ 除,返回結(jié)果為浮點(diǎn)類型 $x = 6;

$y = $x/3; $y = 2 

% 求余,返回結(jié)果為浮點(diǎn)類型 $x = 6;

$y = $x%4; $y = 2 

++ 遞加,分為前加和后加

對(duì)布爾值和 NULL 無(wú)效 $x = 2;

++$x;(前加)

$x++;(后加) $x = 3 

– 遞減,分為前遞減和后遞減

對(duì)布爾值和 NULL 無(wú)效 $x = 2;

–$x;(前減)

$x–;(后減) $x = 1

對(duì)于前加和后加,執(zhí)行后的結(jié)果都是變量加1,其區(qū)別在于執(zhí)行時(shí)返回結(jié)果不一樣,參考下面兩個(gè)例子:

  1. <?php  
  2. $x = 2;  
  3. echo $x++;  //輸出2  
  4. echo $x;    //輸出3  
  5. $x = 2;  
  6. echo ++$x;  //輸出3  
  7. echo $x;    //輸出3  
  8. ?>  

遞減同理.

賦值運(yùn)算符

賦值運(yùn)算符“=”用于賦值運(yùn)算,賦值運(yùn)算符的作用在于把右邊的值賦值給左邊變量:

1 $x = 2; 

該例子將整型值 2 賦值給變量 $x.

賦值運(yùn)算符其他用法

賦值運(yùn)算符可以嵌套使用:

  1. <?php  
  2. $y = ($x = 2) + 5;    //結(jié)果為 $x=2,$y=7  
  3. ?>  

賦值運(yùn)算符的一些變形使用方法:

1 $y += $x; 

實(shí)際上它等同于:

1 $y = $y + $x; 

同理有:

$y -= $x; 

$y *= $x; 

$y /= $x; 

$y %= $x; 

$y .= $x;   // . 為連接運(yùn)算符,見(jiàn)字符串運(yùn)算符 

比較運(yùn)算符

運(yùn)算符 說(shuō)明 例子 運(yùn)算結(jié)果 

== 等于 2 == 3 FALSE 

!= 不等于,也可寫作<> 2 == 3 TRUE 

> 大于 2 > 3 FALSE 

< 小于 2 < 3 TRUE 

>= 大于等于 2 >= 3 FALSE 

<= 小于等于 2 <= 3 TRUE

比較運(yùn)算符也可用于字符串比較.

三元運(yùn)算符

三元可以視作是特殊的比較運(yùn)算符:

(A) ? (B) : (C) 

語(yǔ)法解釋:在 A求值為 TRUE 時(shí)整個(gè)表達(dá)式的值為 B,否則為 C.

例子:

1.$y = ($x == 2) ? $x : 1; 

該例子判斷變量$x的值是否等于2,如果$x等于2,那么$y的值就等于$x(也就是等于2),反之$y就等于1.

邏輯運(yùn)算符

運(yùn)算符 說(shuō)明 例子 運(yùn)算結(jié)果

&& 邏輯與,也可寫作 and $x = 2;

$y = 6;

$x && $y > 5 FALSE

|| 邏輯或,也可寫作 or $x = 2;

$y = 6;

$x && $y > 5 TRUE

! 邏輯非,取邏輯的反面 $x = 2;

$y = 6;

!($x > $y) TRUE

連接運(yùn)算符

字符串運(yùn)算符主要指連接運(yùn)算符“.”,它將連接其左右參數(shù)字符串.

例子:

  1. $x = "beijing";  
  2. $y = $x."你好";       //$y = "beijing你好" 

如該例子所示,字符和變量共同輸出時(shí)需要使用連接運(yùn)算符.

連接符與賦值運(yùn)算符一起可構(gòu)成連接賦值運(yùn)算符:

 

  1. $x = "beijing";  
  2. $x .="你好";      //$x = "beijing你好” 

錯(cuò)誤控制運(yùn)算符

錯(cuò)誤控制運(yùn)算符:@,當(dāng)將其放置在一個(gè) PHP 表達(dá)式之前,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都被忽略掉.

  1. <?php 
  2. /* 讀取文件 */ 
  3. $my_file = @file ('file1'or 
  4.     die ("打開文件失敗,錯(cuò)誤信息: '$php_errormsg'"); 
  5. ?> 

錯(cuò)誤控制運(yùn)算符經(jīng)常用于在可能產(chǎn)生錯(cuò)誤的地方屏蔽 PHP 的系統(tǒng)錯(cuò)誤而提示友好的錯(cuò)誤信息,運(yùn)算符優(yōu)先級(jí)的一個(gè)例外

今天在老王的技術(shù)手冊(cè)看到一個(gè)問(wèn)題:

  1. <?phpif ($a = 100 && $b = 200) {     var_dump($a$b);} 

輸出是什么?

這個(gè)問(wèn)題, 咋一看或許覺(jué)得簡(jiǎn)單, 但其實(shí)仔細(xì)推敲并不簡(jiǎn)單,如果說(shuō)布爾與之前的部分, 是由于優(yōu)先級(jí)的問(wèn)題, 但是如果僅僅是優(yōu)先級(jí)的問(wèn)題的話, 那么結(jié)果應(yīng)該是:

$a = (100 && $b) = 200而實(shí)際上的結(jié)果, 確實(shí)高優(yōu)先級(jí)的&&讓步給次優(yōu)先級(jí)的=, 讓 $b = 200 先結(jié)合了.

究其原因, 是因?yàn)镻HP并不完全遵守優(yōu)先級(jí)的定義, 這個(gè)在PHP的手冊(cè)中也有說(shuō)明:

Note: 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.

這樣的設(shè)計(jì), 個(gè)人不發(fā)表看法, 反正在C語(yǔ)言中, 這樣類似的語(yǔ)句是判定為語(yǔ)法錯(cuò)的. PHP采用這樣的設(shè)計(jì), 很可能是歷史原因,

有好奇的同學(xué), 會(huì)想知道到底為什么, 之前jayeeliu網(wǎng)友也問(wèn)過(guò):

laruence你好:

問(wèn)一個(gè)php運(yùn)算符優(yōu)先級(jí)的問(wèn)題.$t == 1 && $tt = 2按照php運(yùn)算符優(yōu)先級(jí)應(yīng)該是(($t == 1) && $tt) = 2這個(gè)順序執(zhí)行,但實(shí)際上應(yīng)該是($t == 1) && ($tt = 2)我有些不太理解.

其實(shí)也簡(jiǎn)單, 運(yùn)算符優(yōu)先級(jí)是在存在二義性文法的時(shí)候的一種規(guī)約規(guī)則選擇的手段, 而PHP的語(yǔ)法分析文件定義中, 卻讓等號(hào)和T_BOOLEAN_AND(&&)之前不存在了規(guī)約沖突:

expr_without_variable:  // 有隱規(guī)則存在, 相當(dāng)于T_BOOLEAN_AND成為了"一元操作符".  |   expr T_BOOLEAN_AND  { zend_do_boolean_and_begin(&$1, &$2 TSRMLS_CC); }

exp最后, 順便說(shuō)一下, PHP對(duì)應(yīng)于T_BOOLEAN_AND 還定義了 T_LOGICAL_AND(and) 和 T_LOGICAL_OR(or) , 這倆個(gè)的優(yōu)先級(jí)都低于等號(hào), 于是就會(huì)有了, 很多PHP入門教材示例代碼中經(jīng)典的:

$result = mysql_query(*)  or die(mysql_error());

類似的還可以用or來(lái)實(shí)現(xiàn)三元操作符(?:)的功能:
$person = $who or $person = "laruence";
//等同于:    
  1. $person = emptyempty($who)? "laruence" : $who

php 恒等運(yùn)算符(===)與比較運(yùn)算符(==)的區(qū)別

恒等計(jì)算符,和比較運(yùn)算符號(hào)“==”的區(qū)別是 “==”不會(huì)檢查條件式的表達(dá)式的類型,恒等計(jì)算符會(huì)同時(shí)檢查表達(dá)式的值與類型.這主要和php是無(wú)類型語(yǔ)言有關(guān),比如 NULL,FALSE,array(),”",0,”0″這幾個(gè)值如果用==他們是相等的,但是你如果判斷出某個(gè)值真正的返回值呢,就可以用 ===

$a = 0;

$b = FALSE;

$a === FALSE 不成立,但 $b === FALSE成立,如果是==, $a == FALSE 和 $b == FALSE都成立

===運(yùn)算符還是很有用的,php有些內(nèi)置函數(shù)成功會(huì)返回某個(gè)值,失敗會(huì)返回false,假如成功了但返回的是”"或者0之類的空值你怎么判斷成功或者失敗呢?這是就可以用 === ,它可以區(qū)分變量類型.

參考:

比較運(yùn)算符 例子 名稱 結(jié)果 

$a == $b 等于 TRUE,如果 $a 等于 $b. 

$a === $b 全等 TRUE,如果 $a 等于 $b,并且它們的類型也相同.(PHP 4 引進(jìn)) 

$a != $b 不等 TRUE,如果 $a 不等于 $b. 

$a <> $b 不等 TRUE,如果 $a 不等于 $b. 

$a !== $b 非全等 TRUE,如果 $a 不等于 $b,或者它們的類型不同.(PHP 4 引進(jìn)) 

$a < $b 小與 TRUE,如果 $a 嚴(yán)格小于 $b. 

$a > $b 大于 TRUE,如果 $a 嚴(yán)格 $b. 

$a <= $b 小于等于 TRUE,如果 $a 小于或者等于 $b. 

$a >= $b 大于等于 TRUE,如果 $a 大于或者等于 $b.

如果比較一個(gè)整數(shù)和字符串,則字符串會(huì)被轉(zhuǎn)換為整數(shù).如果比較兩個(gè)數(shù)字字符串,則作為整數(shù)比較.此規(guī)則也適用于 switch語(yǔ)句.

  1. <?php 
  2. var_dump(0 == "a"); // 0 == 0 -> true 
  3. var_dump("1" == "01"); // 1 == 1 -> true 
  4. var_dump("1" == "1e0"); // 1 == 1 -> true 
  5. switch ("a") { 
  6. case 0: 
  7.     echo "0"
  8.     break
  9. case "a"// never reached because "a" is already matched with 0 
  10.     echo "a"
  11.     break
  12. ?> 

說(shuō)了一堆了我們?cè)倏纯戳硪黄恼?運(yùn)算符號(hào)(php)操作符號(hào)

按運(yùn)算符號(hào)的功能分為

■算數(shù)運(yùn)算符 + – * / % ++ –

■字符串運(yùn)算符(連接運(yùn)算符) .

■賦值運(yùn)算符  =   +=  -=  *=   %=   .=

■比較(關(guān)系、條件)運(yùn)算符>  <   >=   <==  ==  ===  !=  <>  !==

■邏輯運(yùn)算符 && and    ||or   !  not

■位運(yùn)算符 &  |   ~ ^ <<   >>  >>>

■其他的預(yù)算符?  : ” ->  ->  ::  & $

■()改變優(yōu)先級(jí)別

%有兩個(gè)目的使用:整除運(yùn)算;控制范圍,不要用小數(shù),也不要用負(fù)數(shù),%會(huì)把兩邊的數(shù)轉(zhuǎn)為整數(shù)后在整除

  1. <?php 
  2. $year=2010; 
  3. if($yeay%4==0 && $year%100!=0  ||$year%400==0){ 
  4. echo"今年是閏年"

控制范圍

$num=4600009;

echo $num%10;//9任何數(shù)和10 取余不會(huì)超過(guò)9

$a++(先用變量再自增1)  ++$a(先自增1在用變量)  $a--   --$a

  1. <?php 
  2. $a=10; 
  3. $b=$a++;//$b=10  $a=11 
  4. $c=--$b;//$c=9 $b=9 
  5. //    9           +     11 
  6. $d=$c++  +  ++$c;//$d=20 $c=11 
  7. $e=$d--  -  --$d;//2 
  8. $name="ljw"
  9. $age=25; 
  10. $heigh=1.75; 
  11. echo "我的名字是:{$name}我的年齡:{$age}我的身高{$hegit}"
  12. echo'我的名字是:'.$name.'我的年齡:'.$age.'我的身高'.$hegit.; 
  13. echo "/$age=".$age;比較運(yùn)算符———條件運(yùn)算法符————-關(guān)系運(yùn)算符 

比較后的結(jié)果只有一種  boolean  true   false

===全等運(yùn)算符
!==
—————===比較時(shí)不僅要求內(nèi)容相同,也要求類型相同

&按位與(兩個(gè)都為1才為1)    |按位或(有一個(gè)為1就為1)   ^異或(不同為1相同為0)  ~取反(0與1互換) 左移  << , 右移>>   無(wú)符號(hào)>>右移

  1. —————————————————————————————– 
  2. $a=20;//16+4                00000000   00000000  00000000  00010100 
  3. —————————————————————————————– 
  4. $b=30;//16+8+4+2    00000000   00000000  00000000  00011110 
  5. —————————————————————————————– 
  6. $c$a & $b
  7. echo $c

&和|既可以做為邏輯運(yùn)算符,又可以作為位運(yùn)算符&&||短路問(wèn)題:&& 和||會(huì)發(fā)生短路&&在做運(yùn)算時(shí),如果前邊的數(shù)為false,則后面是否為true,整個(gè)表達(dá)式都是false||在做運(yùn)算是,如果前面的數(shù)是true,則后邊是否為false,整個(gè)表達(dá)式都為true;

&或|運(yùn)算時(shí),兩邊都會(huì)被執(zhí)行.

其他運(yùn)算符

條件?成立執(zhí)行這里 :不成立則執(zhí)行這里

反引號(hào)執(zhí)行操作系統(tǒng)命令:

  1. $str=`ipconfig/all`; 
  2.  
  3. echo '<pre>'
  4. echo $str
  5. echo '</pre>'@getType();錯(cuò)誤控制符,放在表達(dá)式前邊,表達(dá)式有錯(cuò)誤的時(shí)候屏蔽掉,不推薦使用. 
生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 欧美黑人双插 | 久久精品日韩 | 欧美伊人精品成人久久综合97 | 成人国产精品免费观看视频 | 日韩免费一区二区 | 日韩国产精品久久久久久亚洲 | 99久久精品国产麻豆演员表 | 色综合久久88色综合天天6 | 日韩国产欧美一区二区三区 | 亚洲精品一区二区三区中文字幕 | 国产精品国产三级国产aⅴ原创 | 午夜精品久久久久久久久久久 | 精品国产一区二区三区久久影院 | 午夜国产精品视频 | 中文字幕国产 | 欧美日韩中文在线 | 天堂а在线中文在线无限看推荐 | 精品亚洲一区二区三区 | 性色av一区二区 | 国产毛片视频 | 精品一区在线 | 久久久鲁 | 国产精品久久久久永久免费观看 | 久久国产综合精品 | 国产麻豆乱码精品一区二区三区 | 日韩精品三区 | 精品久久精品久久 | 中文字幕精品久久久乱码 | 夜夜艹日日艹 | 99精品视频在线观看免费播放 | 成人永久视频 | 国产一区二区三区在线 | 日韩视频在线一区 | 中文字幕日韩电影 | 在线观看黄色免费网站 | 草视频 | 欧洲av一区 | 成人免费视频播放器 | 九九免费视频 | 久久99亚洲精品 | 久久久青草 |