php入門-常用的運算符

什么是運算符

什么是運算符?運算符是告訴PHP做相關運算的標識符號。例如,你需要計算123乘以456等于多少,這時候就需要一個符號,告訴服務器,你需要做乘法運算。

PHP中的運算符有哪些?PHP運算符一般分為算術運算符、賦值運算符、比較運算符、三元運算符、邏輯運算符、字符串連接運算符、錯誤控制運算符。

<?php 
$a = 1;
$b = 1;
$c = $a + $b;
echo $c;
?>
//2

PHP中的算術運算符

<?php 
$english = 110; //英語成績
$math= 118; //數學成績
$biological = 80; //生物成績
$physical = 90; //物理成績

$sum = $english+$math+$biological+$physical;
$avg = $sum / 4;
$x = $math - $english;
$x2 = $english * $english;

echo "總分:".$sum."<br />";
echo "平均分:".$avg."<br />";
echo "數學比英語高的分數:".$x."<br />";
echo "英語成績的平方:".$x2."<br />";
?>
//總分:398
//平均分:99.5
//數學比英語高的分數:8
//英語成績的平方:12100

PHP中的賦值運算符

PHP的賦值運算符有兩種,分別是:

(1)“=”:把右邊表達式的值賦給左邊的運算數。它將右邊表達式值復制一份,交給左邊的運算數。換而言之,首先給左邊的運算數申請了一塊內存,然后把復制的值放到這個內存中。

(2)“&”:引用賦值,意味著兩個變量都指向同一個數據。它將使兩個變量共享一塊內存,如果這個內存存儲的數據變了,那么兩個變量的值都會發生變化。

<?php 
    $a = "你好";
    $b = $a;
    $c = &$a;
    $a = "大家好";
    
    echo $b."<br />";
    echo $c."<br />";
?>
//你好
//大家好
//$b是$a復制的值,之后$a怎么變,$b都不變化。$c和$a指向同一個內存,$a變化,對應內存值也變化,$c也變化。

PHP中的比較運算符

533a0af30001e75c06600409.jpg.png
<?php  
    $a = 1;
    $b = "1";
    var_dump($a == $b);
    echo "<br />";
    var_dump($a === $b);
    echo "<br />";
    var_dump($a != $b);
    echo "<br />";
    var_dump($a <> $b);
    echo "<br />";
    var_dump($a !== $b);
    echo "<br />";
    var_dump($a < $b);
    echo "<br />";
    echo "<br />111<br />";
    $c = 5;
    var_dump($a < $c);
    echo "<br />";
    var_dump($a > $c);
    echo "<br />";
    var_dump($a <= $c);
    echo "<br />";
    var_dump($a >= $b);
    echo "<br />";
    var_dump($a >= $b);
    echo "<br />";
?>
/*
bool(true) 
bool(false) 
bool(false) 
bool(false) 
bool(true) 
bool(false) 

111
bool(true) 
bool(false) 
bool(true) 
bool(true) 
bool(true) 
*/

PHP中的三元運算符

<?php 
    $a = 78;//成績
    $b = $a >= 60 ? "及格": "不及格"; 
    echo $b;
?>
//及格

PHP中的邏輯運算符

邏輯運算符主用是進行邏輯運算的,例如:邏輯與、邏輯或、邏輯異或、邏輯非等

533e0fbe0001c56f06080279.jpg.png
<?php 
    $a = TRUE; //A同意
    $b = TRUE; //B同意
    $c = FALSE; //C反對
    $d = FALSE; //D反對
    //咱順便復習下三元運算符
    echo ($a and $b)?"通過":"不通過";
    echo "<br />";
    echo($a or $c)?"通過":"不通過";
    echo "<br />";
    echo ($a xor $c xor $d)?"通過":"不通過";
    echo "<br />";
    echo !$c?"通過":"不通過";
    echo "<br />";
    echo $a && $d?"通過":"不通過";
    echo "<br />";
    echo $b || $c || $d?"通過":"不通過";
    
?>
/*
通過
通過
通過
通過
不通過
通過
*/

PHP中的字符串連接運算符

字符串連接運算符是為了將兩個字符串進行連接,PHP中提供的字符串連接運算符有:

(1)連接運算符(“.”):它返回將右參數附加到左參數后面所得的字符串。

(2)連接賦值運算符(“.=”):它將右邊參數附加到左邊的參數后。

<?php 
    $a = "黃先生";
    $tip = $a.",你好";
    
    $b = "東邊日出西邊雨"; 
    $b .= ",道是無晴卻有晴";
    
    $c = "東邊日出西邊雨"; 
    $c = $c.",道是無晴卻有晴";
    
    echo  $tip."<br />";
    echo  $b."<br />";
    echo  $c."<br />";
?>
/*
黃先生,你好
東邊日出西邊雨,道是無晴卻有晴
東邊日出西邊雨,道是無晴卻有晴
*/

PHP中的錯誤控制運算符

PHP中提供了一個錯誤控制運算符“@”,對于一些可能會在運行過程中出錯的表達式時,我們不希望出錯的時候給客戶顯示錯誤信息,這樣對用戶不友好。于是,可以將@放置在一個PHP表達式之前,該表達式可能產生的任何錯誤信息都被忽略掉;

如果激活了track_error(這個玩意在php.ini中設置)特性,表達式所產生的任何錯誤信息都被存放在變量$php_errormsg中,此變量在每次出錯時都會被覆蓋,所以如果想用它的話必須盡早檢查。

需要注意的是:錯誤控制前綴“@”不會屏蔽解析錯誤的信息,不能把它放在函數或類的定義之前,也不能用于條件結構例如if和foreach等。

<?php  
 $conn = @mysql_connect("localhost","username","password");
 echo "出錯了,錯誤原因是:".$php_errormsg;
?>
/*

Notice: Undefined variable: php_errormsg in D:\phpStudy\WWW\php_Introduction\index.php on line 10
出錯了,錯誤原因是:
*/

PHP中的算術運算符(2)

取模算術符有啥用呢?

假設我們要在一個考場安排了一場考試,對考生從1開始,都進行了編號,那么怎么讓服務器幫助我們計算考生在的位置呢,進而打印考場的考生對照表呢?在右邊編輯器里輸入兩條指令,如圖所示:

<?php
     $maxLine = 4; //每排人數
     $no = 17;//學生編號
     $line = ceil($no/$maxLine);//ceil()的作用是向上取整,以這里為例,17除以4等于4.25,所以向上取整就是5。17號的學生要坐在第五排。
     $row = $no%$maxLine;

     echo "編號<b>".$no."</b>的座位在第<b>".$line."</b>排第<b>".$row."</b>個位置";
?>
//編號17的座位在第5排第1個位置
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、php可以做什么 php是一種可以在服務器端運行的編程語言,可以運行在Web服務器端。 php是一門后臺編程語...
    空谷悠閱讀 3,155評論 4 97
  • PHP 學習目錄 ├─PHP視頻教程 1 LAMP網站構建 │ ├─PHP教程 1.1.1 新版視頻形式介紹│ ...
    曹淵說創業閱讀 16,188評論 29 417
  • 運算符是用來對變量、常量或數據進行計算的符號,它對一個值或一組值執行一個指定的操作。PHP的運算符包括算術運算符...
    nothing_c閱讀 782評論 0 1
  • 什么是運算符 PHP中的運算符有哪些?PHP運算符一般分為算術運算符、賦值運算符、比較運算符、三元運算符、邏輯運算...
    頭像太帥無法顯示閱讀 447評論 0 1
  • 每逢當我給別人說到,我小時候口吃,這個毛病一直延續到今,只是程度略有緩解。別人的第一反應是,不會吧,現在一點都聽不...
    路雖遠行必至閱讀 285評論 1 2