字串
一、含義;字串,就是一串字元,
二、宣告;$str="字串"或者$str='字串',即用單引號或者雙引號包裹起來,
三、轉義符;在某些時候,我們需要輸出一些符號,但是在**裡,有些符號有特定的作用,會發生衝突,轉義符的作用就是消除這些有特殊意義的符號的作用
1、形式;\;取消斜槓後字元的特殊含義,使其變為乙個普通的符號,如,echo 「飛哥」我愛你「」;這個時候我想要在輸出的時候,把我愛你兩邊的字串也顯示出來,但是直接這麼寫,會報錯,so,echo 「飛哥\」我愛你\「」;這樣就好了
2、預設用法;系統預設的固定組合,有很多,可以在手冊里查
(1)\n;換行符
(2)\r;回車符
(3)\$;轉義成單純的$符號
(2)\t;對應鍵盤上的tab
四、單引號和雙引號;
1、區別
(1)、轉義上的區別;單引號,系統不做複雜的轉義,只轉義\',\\,其他的會原樣輸出。
雙引號,則轉義的比較多,\",\\,\r,\n,\t,\$等
(2)、對變數解析的區別;單引號,不對以字串作為變數名的變數解析,也就是說,在乙個字串裡,如果包含$str,他不會把$str作為乙個變數解析,而是把他當做乙個字串直接輸出$str
雙引號,在乙個字串裡看到了$str這種形式的東西,他會把他當做乙個變數處理
即;在單引號中,如果有$這個符號,他不會做其他的動作,但是在雙引號中,發現$後,他會預設這是乙個變數,然後去自動獲取這個變數的值,獲取不到就報錯, 也就是說,
單引號代表的是乙個單純的字串,相當於孩子,你說什麼就是什麼,而雙引號,就是乙個中年人,想的比較多,他會想你這句話裡的某個詞是不是有別的意思?是不是在影射什麼?
2、執行速度
單引號的速度快,雙引號的速度慢
因為單引號不需要考慮其他的因素,雙引號需要檢查裡面的資料是否有其他的含義
3、使用場景選擇
(1)、雙引號。在需要夾雜變數的時候,如sql語句裡,省事,可以呼叫其他的變數資料
(2)、單引號。大段的文字(如;一篇文章),不需要解析$變數,速度快
五、界定字串;
1、heredoc。<<<.
形式; 變數名=《識別符號
資料識別符號;
作用和雙引號相同,形式不一樣
1.$age=29;
2.$str=<<3.fghfdg
4.fgjfdgjfdgj
5.gfjdjghj
6.$age
7.title;
8.echo $str;
上面的**執行後會發現,3到6的資料都會輸出,
六、特性;
類陣列,可以把乙個字串當做乙個簡單的一維陣列,它裡面的每個字元都可以根據索引找出來
如;$str='abcd';
echo $str[0];// 會輸出a
php 字串 lt lt lt PHP之字串
特點 字串可以使用陣列的處理函式操作,但並不是真正的陣列 雙引號中的變數用 括起來,因為字串中若遇到 符號,解析器會盡可能多的獲取後面的字元以組成乙個合法的變數名 lamp array os linux webserver apache db mysql language php echo a os...
PHP之字串函式
一 字串長度函式1.int strlen str 計算字元長度 2.mb strlen string str string encoding 二 查詢字串位置函式1.strpos str,search int 查詢search在 str中的第一次位置從int開始。2.stripos str,sear...
PHP之字串函式
b 2,大小寫轉換 b strtoupper b 1,擷取字元 b 1 擷取英文本元 created at 2011 10 25 year substr created at,0,4 從第0個位置,擷取長度為4 month substr created at,5,2 從第5個位置,擷取長度為2 結果...