在php中
『壹』 關於php中{}的使用
1.簡單句法規則(用花括弧界定變數名,適用於PHP所有版本):
$a = 'flower';
echo "She received some $as";
// 無效;字母s會被當成有效的變數名組成元素,但是這里的變數是$a
echo "She received some ${a}s"; // 有效
echo "She received some {$a}s"; // 有效;推薦的使用方法
我們希望表達的是」她收到一些花「,語境中的flower應該採用復數形式(也就是說應該在後面加上S),但是如果不對變數做任何界定的話,就會出現第一個echo的情況。顯然我們希望輸出的是$a而不是$as。那麼我們通常是怎麼來處理這個輸出的呢?
echo "She received some $a"."s";
echo "She received some ".$a."s";
// 這兩種習慣性的寫法應該沒有加花括弧的寫法簡潔明了吧?
注意:不管{是出現在$前面還是後面,只有兩者緊挨著時花括弧才會被當成是界定符號。不要在之間加空格,要不然就會被當作普通的花括弧處理
echo "She received some { $a}s";
// 輸出的結果為:She received some { flower}s
2.復雜句法規則(用花括弧界定表達式等,使用與PHP4+):
echo "有效的寫法: {$arr[4][3]}";
// 有效;界定多維數組
echo "有效的寫法: {$arr['foo'][3]}";
// 有效;當在字元串中使用多維數組時,一定要用括弧將它括起來
echo "有效的寫法: {$this->width}00";
// 有效;如果不界定的話,就會變成 $this->width00
echo "有效的寫法: {$this->value[3]->name}";
// 有效;該例演示了界定鏈式調用
echo "有效的寫法: $name: {${$name}}";
// 有效;該例演示的效果實際上是一個可變變數
echo "有效的寫法: {${getName()}}";
// 有效;該例演示了將函數的返回值作為變數名
echo "有效的下發: {${$this->getName()}}";
// 有效;該例演示了將函數的返回值作為變數名
注意1:echo "這樣寫有效嗎: {getName()}";輸出結果為:'這樣寫有效嗎:
{getName()}'。因為裡面不含$,所以花括弧不會被當作界定符
注意2:echo "這樣寫有效嗎:{$arr[foo][3]}"; 在回答這個問題前我們先來進行一個實驗:
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd'=>'e');
echo "This is $arr[d]";
// 我們發現這樣寫是沒有問題的,那麼我們像下面這樣寫呢?
echo $arr[d];
產生了這樣的錯誤:
Notice: Use of undefined constant d - assumed 'd'
注意:採用了未定義的常量d,可能應該為'd'
那麼如果我們像下面這樣修改一下代碼的話
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd'=>'e');
define('f', 'd');
echo $arr[f];
我 們發現這次沒有問題了。可以看出在字元串中數組的索引不加單引號是沒有問題的,但是如果這種寫法不是出現在字元串當中就會報錯,而對於字元串中 {$arr[foo][3]}的解析就是按照非字元串的方式解析的。所以說在字元串當中對數組只加花括弧界定而不對索引加單引號的寫法是錯誤的。因為程序 會把不加單引號的索引當作是常量來進行解析,這就產生了錯誤。正確的寫法應該是:
echo "有效的寫法: {$arr['foo'][3]}";
特 別提醒一點:echo "This is $arr[d]";這種寫法雖然能夠被程序解析,但這也僅限於數組是一維數組的情況。嚴謹的寫法應該是:echo "This is {$arr['d']}";我的學生曾經在這一點上和我爭論過,他說:既然前面一種寫法能出結果,為什麼一定要用後面一種寫法呢?那麼,我們再繼續修改一 下前面的代碼
error_reporting(E_ALL);
$arr = array('a', 'b', 'c',
'd'=>array('e'=>'f')
);
echo "This is $arr[d][e]";
這樣還能夠被正確解析嗎?我只想告訴你,加花括弧是嚴謹的必要的。
注意3:
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd');
echo "This is {$arr[2]}
";
echo "This is {$arr['2']}
";
執行上面的代碼。結果是一樣的,為什麼會這樣呢?我只能告訴你PHP是弱類型語言,至於什麼叫弱類型語言我就不在這里多說了。自己去Google一下吧。說了這么多,那麼最能體現這些句法規則優勢的具體應用在什麼地方呢?----SQL語句
// 示例一:
$SQL1 = "select * from table where id={$_GET['id']}";
// 示例二:
$SQL2 = "select * from table where id={$this->id}";
『貳』 %在php中是什麼意思
%在php中有多種含義:
1.字元 'afafa%bbafs'
2.百分數 50%
3.取餘3%2=> 1
4.格式化輸出
<?php
$number = 123;
$txt = sprintf("%f",$number);
echo $txt;
?> =>123.000000
參數 format 是轉換的格式,以百分比符號 ("%") 開始到轉換字元結束。下面的可能的 format 值:
%% - 返回百分比符號
%b - 二進制數
%c - 依照 ASCII 值的字元
%d - 帶符號十進制數
%e - 可續計數法(比如 1.5e+3)
%u - 無符號十進制數
%f - 浮點數(local settings aware)
%F - 浮點數(not local settings aware)
%o - 八進制數
%s - 字元串
%x - 十六進制數(小寫字母)
%X - 十六進制數(大寫字母)
『叄』 @# 在PHP中是有什麼含義
沒什麼含義,如果出現在引號裡面的話。
@出現在函數前面,表示不顯示函數執行過程中的錯誤信息,比如打開了不存在文件。
『肆』 .=在php中是什麼意思,
一、=>,->的意思:
->是對象執行方法或取得屬性用的。
=>是數組里鍵和值對應用的。
二、用法
1、=> 的用法數組中用於數組的key和value之間的關系例如:
$a=array('0'=>'1','2'=>'4',);echo$a['0'];echo$a['2'];
2、-> 的用法類中用於引用類實例的方法和屬性例如:
classTest{functionadd(){return$this->var++;}var$var=0;}$a=newTest;
//實例化對象名稱
echo$a->add();echo$a->var;
(4)在php中擴展閱讀
PHP中->代碼如下:
<?php
class Car {
public $speed = 0;
//增加speedUp方法,使speed加10
public function speedUp(){
$this->speed+=10;
}
}
$car = new Car();
$car->speedUp();
echo $car->speed;
?>
PHP中=>代碼如下:
<?php
//從數組變數$arr中,讀取鍵為apple的值
$arr = array('apple'=>"蘋果",'banana'=>"香蕉",'pineapple'=>"菠蘿");
$arr0=$arr["apple"];
if( isset($arr0) )
{print_r($arr0);
}
?>
『伍』 .=在php中什麼意思
php中 . 是拼接字元串的意思。.= 應該是把某個字元拼接的某個數組里吧
『陸』 PHP中:什麼意思
PHP中「?:」指的是三目運算符。
三元運算符,又稱條件運算符,是計算機語言的重要組成部分。它是唯一一個有三個操作數的操作符,所以有時它被稱為三元操作符。一般來說,二項式運算元是右界的。
三元運算符提供了一種表示簡單if-else語句的簡寫方法。操作符由問號(?)組成。和一個冒號(:)的形式:表達式?表達式:表達式;一個語句被稱為條件表達式,它由三個子表達式組成,使用問號?結腸:分開。
問號前的條件表達式部分是要測試的條件。這類似於if語句中括弧中的表達式。如果條件為真,那麼執行Betweenand:否則,在:之後執行該部分。如果您認為有幫助,可以在子表達式周圍加上括弧。
(6)在php中擴展閱讀:
運算規則:
對於條件表達式b?X:y,計算條件b,然後做出判斷。如果b的值為真,則計算x的值,結果為x的值;否則,計算y的值,得到y的值。
條件表達式永遠不會同時求x和y的值。條件運算符是右結合的,也就是說,從右到左求值。例如,一個?B:c?D:e會按a嗎?B:(c?D:e)執行。
可以理解為:條件?結果1:結果2,裡面?數字是格式要求。如果條件為真,條件為真就是結果1,否則就是結果2。
『柒』 PHP中「=>」的作用
這個在定義數組的時候,用來指定數組中下標和值的關系,例如:
$color=array('apple'=>'red', 'orange'=>'yellow');
echo $color['apple'];//輸出red
『捌』 % 在PHP中的作用
% 這就就是取模。意思就是取余。。不止在php中這樣,很多程序語言裡面都有這樣的運算符。
『玖』 在PHP中$是什麼意思
變數的標志。後面跟由字母或下劃線開頭的且由字母下劃線數字組成的字元串,形成一個變數
如:
$aa 表示變數aa