PHP 支持八種原始類型(type)。 四種標量類型: 兩種複合類型: 兩種特殊類型: 字元串類型 一個字元串是一串字元的序列,就像 "Hello world!"。 定義字元串有 3 種方法: 1.單引號定義 將字元串用單引號(')括起來是定義字元串最簡單的方法: 如果字元串中有單引號,那麼需要使用 ...
PHP 支持八種原始類型(type)。
四種標量類型:
兩種複合類型:
兩種特殊類型:
- resource(資源)
- NULL(空)
字元串類型
一個字元串是一串字元的序列,就像 "Hello world!"。
定義字元串有 3 種方法:
- 單引號(')
- 雙引號(")
- 定界符(<<<)
1.單引號定義
<?php $var_char = '碼農教程'; ?>
如果字元串中有單引號,那麼需要使用反斜線(\)進行轉義:
<?php $var_char = '字元串中包含\'需要轉義'; echo $var_char; //輸出:字元串中包含'需要轉義 ?>
提示:如果在單引號之前或字元串結尾需要出現一個反斜線,需要用兩個反斜線表示。換言之反斜線在此只轉義 ' 字元而不會轉義其他字元。
如果只是定義一個簡單的字元串而不需要解析更多的內容,顯然用單引號效率更高。
2.雙引號定義
如果用雙引號(")定義字元串,PHP 懂得更多特殊字元的轉義序列:
轉義序列 | 說明 |
---|---|
\n | 換行 |
\r | 回車 |
\t | 水平製表符 |
\[/td> | 反斜線 |
\$ | 美元符號 |
\" | 雙引號 |
\[0-7]{1,3} | 此正則表達式序列匹配一個用八進位符號表示的字元 |
\x[0-9A-Fa-f]{1,2} | 此正則表達式序列匹配一個用十六進位符號表示的字元 |
例子:
<?php $var_char = "這裡有個換行\n這是第二行文字"; ?>
註意該例子中的換行是指文本意義上換行,如果需要在瀏覽器里顯示換行,需要用 nl2br() 函數將 \n 替換成 <br />。
雙引號字元串最重要的一點是其中的變數名會被變數值解析替代:
<?php $var_char = "這是一些文字"; echo "請列印這些文字:$var_char"; //輸出:請列印這些文字:這是一些文字 ?>
3.定界符定義
定界符定義字元串是使用定界符語法(<<<),併在定界符之後提供一個標識符,然後是被定義的字元串,最後是同樣的標識符結束字元串定義。
例子:
<?php $str = <<<EOD 我是用定界符定義字元串的例子 這是其他更多字元 …… EOD; ?>
該例子中,EOD 就是標識符。結束標識符必須從行的第一列開始。同樣,標識符也必須遵循 PHP 中其它任何標簽的命名規則:只能包含字母數字下劃線,而且必須以下劃線或非數字字元開始。
註意:結束標識符所在的行不能有任何其他字元(可能除了一個分號 ; 之外),包括行縮進等。
提示:字元串不僅僅指上面例子所示的若幹文字字元,也可以把數字定義為字元串,甚至巨大的長文本,這是和資料庫中的 char 定義不一樣的地方。
原文地址:http://www.manongjc.com/php/php_string.html
相關閱讀:
php 使用str_word_count() 函數計算字元串中的單詞個數
php str_split() 將字元串分割成N部分並保存到數組中
php str_shuffle 打亂字元串,將字元串的字元隨機排列
php str_rot13() 函數獲取字元串的ROT13 編碼