1.是什么字符串
一串字符就是字符串
2.字符串的聲明方式
-
單引號聲明
$str = '蘋果真有錢,比英國國庫的錢還多。我想倒插門'; var_dump($str); //string '蘋果真有錢权均,比英國國庫的錢還多。我想倒插門' (length=63)
-
雙引號聲明
$str = '213'; var_dump($str); //string "213" (length=3)
-
定界符聲明
$a='啊'坛增;
$str = <<<EOF
蘋果真有錢搪柑,比英國國庫的錢還多。
我想倒插門$a
EOF;
var_dump($str);結(jié)果 string ' 蘋果真有錢编振,比英國國庫的錢還多缀辩。 我想倒插門' (length=69)
注:中文一個漢字占位3個字節(jié)。中文的標點也是3個字節(jié)
3.單引號和雙引號區(qū)別
解析轉(zhuǎn)譯字符的能力
//1.單引號
$str = '青青子衿\n悠悠我心 this\'s a text';
var_dump($str);
//string '青青子衿\n悠悠我心 this's a text' (length=40)
//2.雙引號
$str = "青青子衿\n悠悠\"我心";
var_dump($str);
//string '青青子衿
悠悠"\'我心' (length=28)
轉(zhuǎn)義字符格式為\字符踪央。常見的轉(zhuǎn)義字符(\n——換行臀玄、\r——回車、\t——tab鍵)
單引號
- 不能解析轉(zhuǎn)譯字符畅蹂,只能解析轉(zhuǎn)譯斜線\和自己本身(')
2.雙引號
- 可以解析轉(zhuǎn)譯字符
解析變量的能力
//1.單引號
$str = '理萬機';
$string = '日$str';
var_dump($string);
//string '日$str' (length=7)
//2.雙引號
$str = '久生情';
$string = "日{(diào)$str}啊";
var_dump($string);
//string '日久生情啊' (length=15)
單引號
注:單引號不能解析變量健无,如果非要使用單引號解析變量,可以使用英文狀態(tài)下的點(.)與變量相連接液斜。
$str = '理萬機';
$string = '日'.$str.'啊';
var_dump($string);
//string '日理萬機啊' (length=15)
雙引號
雙引號可以解析變量
注:在雙引號中解析變量需要使用{}將變量括起來累贤,告訴字符串,請當變量來解析少漆,若不加括號會報錯臼膏。這也是為什么上述雙引號例子中直接用括號括住。
引號之間的互相嵌套
- 單引號可以嵌套雙引號检疫,但是如果單引號要是嵌套單引號需要加轉(zhuǎn)譯斜線\轉(zhuǎn)譯
- 雙引號可以嵌套單引號讶请,但是如果雙引號要嵌套雙引號需要加轉(zhuǎn)譯斜線\轉(zhuǎn)譯
實際中使用哪種符號
- 能用單引號就用單引號祷嘶。畢竟雙引號功能太多屎媳。
- SQL語句一般使用雙引號(在數(shù)據(jù)庫中學(xué)習(xí))
- 大文章或者大數(shù)據(jù)的時候使用定界符夺溢。
定界符
- 使用定界符,需要注意開頭和結(jié)尾的書寫格式.以<<<開始烛谊,后面跟一串自定義的字符
- 書寫完自定字符串時必須換一行內(nèi)容
- 寫完內(nèi)容時必須另起一行寫結(jié)束符號
- 結(jié)束符所在的行必須頂頭寫风响,而且后面不能有其他內(nèi)容
- 自定義字符串一般使用EOF (文件結(jié)尾end of file的意思)
- 使用定界符定義,空格換行等都會保留下來并且可以解析變量。