本文目錄一覽:
php花括號,大括號{}幾種使用方法的分析
一、在函數或流程控制語句中的使用
例如:function test(){}、if(){}、foreach(){}
在函數中常用的方法就是保持數據在作用域範圍的執行
二、$str{4}在字符串的變量的後面跟上{}大括號或者中括號[],裏面填寫了數字,這裡是吧字符串變量當成數組處理。舉個例子如下:
?php
$str=’phpernote.com’;
echo $str{0}; // 輸出 p
echo $str[1]; // 輸出 h
$str=’000′;
$str{0}=’1′;
echo $str; // 輸出 100
注意:利用這一特性可用來檢查某個字符串是否滿足多少長度,使用 isset 的方式替代 strlen 函數,因為 isset 是語言結構,strlen 是函數,所以使用 isset 比使用 strlen 效率更高。比如判斷一個字符串的長度是否小於 5,如下:
if(!isset($str{5})) 比 if(strlen($str)5) 更好。
三、對於可變變量使用大括號,比如:{$val},這時候大括號就是告訴PHP,括起來的部分要當成變量處理。如下例子:
?php
$array=array(‘www’,’name’=’phpernote’,’com’);
echo “$array[‘name’]”;//用此句會報語法錯誤
echo “{$array[‘name’]}”;//此句正常,大括號內的字符將作為變量來處理
注意:${$a[1]} 與${$a}[1] 是完全不同的:
${$a[1]} 這裡$a[1]是一個變量;
${$a}[1] 這裡$a是一個變量;
這種寫法的好處就是在字符串中引用變量的時候,這樣就可以不使用.運算符,從而減少代碼的輸入量。
PHP這裡這個花括號是幹什麼的?
在PHP的雙引號字符串裏面,可以使用變量,有時候變量與外面的內容可能不好分辨,此時需要使用話括號,舉例:
$id=123;
echo “id=$id”;//輸出:id=123
echo “id=$idabc”;//輸出:id=
echo “id={$id}abc”;//輸出:id=123abc
注意第二個輸出語句,會導致$idabc變量不存在的提示,需要用第三個語句的方式增加花括號。
此外,例子中第一個輸出語句沒有使用花括號,因為不會產生起義,你的語句也是一樣的,可不用花括號。
php變量什麼情況下加大括號{}
加{}有時候是為了防止變量名和後面的字符串連在一起嘛例如{$cid}dd如果cid=aa那麼{$cid}dd=aadd
不加的話你自己看看了$ciddd,豈不變成了ciddd變量了~~
PHP變量放在大括號裏面的含義
//Thefollowingisokayasit’sinsideastring.Constantsarenot
//lookedforwithinstringssonoE_NOTICEerrorhereprint”Hello$arr[fruit]”;//Helloapple
//Withoneexception,bracessurroundingarrayswithinstrings
//allowsconstantstobelookedforprint”Hello{$arr[fruit]}”;//Hellocarrotprint”Hello{$arr[‘fruit’]}”;//Helloapple
下面幾個比較能說明原因的解釋是:
表示{}裏面的是一個變量
,執行時按照變量來處理
在字符串中引用變量使用的特殊包括方式,這樣就可以不使用.運算符,從而減少代碼的輸入量了。
其實輸出那塊是等同於print
“hello
“.$arr[‘fruit’];
PHP:
字符串變量中大括號(花括號{})的作用
PHP
變量後面加上一個大括號{},裏面填上數字,就是指
PHP
變量相應序號的字符。
例如:$str
=
‘hello’;
echo
$str{0};
//
輸出為
h
echo
$str{1};
//
輸出為
e
如果要檢查某個字符串是否滿足多少長度,可以考慮用這種大括號(花括號)加
isset
的方式替代
strlen
函數,因為
isset
是語言結構,strlen
是函數,所以使用
isset
比使用
strlen
效率更高。
比如判斷一個字符串的長度是否小於
5:
PHP字符串外面要加花括號嗎、?
$str 外圍 包一個{} 是為了防止變量名和後面的字符串連在一起:
eg:
?php
$str = ‘Hello , PHP’;
$strbb = ‘Hello , Java’;
$query1 = ” insert into t1(into) values(‘$strbb’)”;
$query2 = ” insert into t1(into) values(‘{$str}bb’)”;
echo $query1 , PHP_EOL;
// 輸出 insert into t1(into) values(‘Hello , Java’)
echo $query2 , PHP_EOL;
// 輸出 insert into t1(into) values(‘Hello , PHPbb’)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/254181.html