PHP基礎語法之 三元運算子及其它運算符

三元運算子和其它運算子

此外還有一些特殊的運算子和符號,我們再來進行講解。可能以後我們需要用到。

符號說明
$x? 真程式碼片段:假程式碼段落判斷是否為真假? 真情況: 假情況;
#``(反引號)反引號中間插代指令,執行系統指令,等價於shell_exec函數
@#單行抑制錯誤,把這一行的錯誤不讓它顯示出來了,效率低不建議使用
=>數組下標訪問符
->#物件存取符
instanceof判斷某個物件是否來自某個類,如果是的回傳true,如果不是回傳false

三元運算符,相當於是if...else結構。不過三元運算子的寫法更簡潔,語法格式如下:

$x? 真程式碼片段(只能寫一句程式碼):假程式碼片段(只能寫一句程式碼) ;

程式碼如下:

<?php
$x = true;

$x ? $y = 5 : $y = 6;
//输出5
echo  $y;

?>

反引號就更特別了,我們常常需要顯示IP位址,在PHP裡面可不可能顯示我們windows的IP位址呢?用反引號,就可以執行我們的指令(不過有些虛擬伺服器是禁止執行這些的指令腳本的):

<?php
echo '<pre>';

echo `ipconfig`;
echo '</pre>';
?>

上面的程式碼你執行看看效果,是不是顯示出來了你機器的IP位址和一堆和IP相關的參數?

@符是指單行抑制錯誤,以後的章節我們還會講解到。此處為了解等級。

<?php
//打开一个不存在的文件adfsafasdfasfasdfdsadf.txt,你运行一下会发现报错了。
//再前面再加上一个@符看看效果
$fp = fopen('adfsafasdfasfasdfdsadf.txt','r');

//@$fp = fopen('adfsafasdfasfasdfdsadf.txt','r');

?>

數組下標訪問符,以後也會有一章講解,此處了解一下就可以了:

<?php

$data = array('sina' =>'新浪' ,'sohu' => '搜狐');

?>

對象訪問符->和instanceof 都是了解級別,以後也有專門的章節來講解:

<?php
//实例化一个对象
$obj = new StdClass();

//判断某对象是某由某个类实例化,如果是的则执行真
if($obj instanceof stdClass){
   echo '真';
}else{
   echo '假';
}
//向obj对象中追加一个成员属性为username
$obj -> username  = 'PHP中文网';

echo $obj -> username;

?>

上面的所有例子中,除了三元運算子、@符號、反引號外。其他的學習等級均為了解,以後講解的時候。知道有這個符號即可。


繼續學習
||
<?php //实例化一个对象 $obj = new StdClass(); //判断某对象是某由某个类实例化,如果是的则执行真 if($obj instanceof stdClass){ echo '真'; }else{ echo '假'; } //向obj对象中追加一个成员属性为username $obj -> username = 'PHP中文网'; echo $obj -> username; ?>