国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP 第二節 數據類型之字符串類型

PHP 第二節 數據類型之字符串類型

2019-12-30 16:31PHP教程網 PHP教程

PHP 數據類型之字符串類型,一般就是用單引號或雙引號包括的東西

PHP中一個字符串可以通過下面的4種方式來定義:

  • 單引號
  • 雙引號
  • heredoc 語法結構
  • nowdoc 語法結構 (自PHP 5.3.0以后)

單引號

定義一個字符串 的最簡單的方法是用單引號把它包圍起來 (標點符號 ')。

如果想要輸出一個單引號,需在它的前面加個反斜線 ()。在單引號前或在字符串的結尾處 想要輸出反斜線,輸入兩條 (\)。注意,如果在任何其它的字符前加了反斜線,反斜線將會被直接輸出。

Note: 不像雙引號 和heredoc語法結構, 在單引號字符串中的變量 和特殊含義的字符將不會被替換。

如果字符串是包圍在雙引號(")中, PHP將對一些轉義字符進行解析,和單引號字符串一樣, 如果輸出轉義字符之外的字符,反斜線會被打印出來。 PHP5.1.1以前,{$var} 中的反斜線還不會被顯示出來。

用雙引號定義的 字符串最重要的特征是變量會被執行。

Heredoc結構

第三種定義字符串的方法是用heredoc句法結構:<<<。在該提示 符后面,要定義個標識符,然后是一個新行。接下來是字符串本身,最后要用前面定義的標識符作為結束標志。

結束時所引用的標識符必須在一行的開始位置, 而且,標識符的命名也要像其它標簽一樣遵守PHP的規則:只能包含 字母、數字和下劃線,并且不能用數字和下劃線作為開頭。

Warning要注意的是結束標識符這行除了 可能有一個分號(;)外,絕對不能包括 其它字符。這意味著標識符不能縮進,分號的前后也不能有任何空白或tabs。更重要的是結束標識符的前面必須是個被本地 操作系統認可的新行標簽,比如在UNIX和Mac OS X系統中是  ,而結束標識符(可能有個分號)的后面也必須跟個 新行標簽。

如果不遵守該規則導致結束標簽不“干凈”,PHP將認為它不是結束標識符而繼續尋找。如果在文件結束前也沒有找到一個正確的結束標識符,PHP將會在最后一 行產生一個句法錯誤。

Heredoc結構就象是沒有使用雙引號的雙引號字符串, 這就是說在heredoc結構中引號不用被替換,但是上文中列出的字符 ( 等)也可使用。 變量將被替換,但在heredoc結構中字符串表達復雜變量時,要格外小心。

Nowdoc結構

就象heredoc結構類似于雙引號字符串,Nowdoc結構是類似于單引號字符串的。Nowdoc結構很象heredoc結構,但是 nowdoc不進行解析操作 。 這種結構很適合用在不需要進行轉義的PHP代碼和其它大段文本。與SGML的 <![CDATA[ ]]> 結構是用來聲明大段的不用解析的文本類似,nowdoc結構也有相同的特征。

一個nowdoc結構也用和heredocs結構一樣的標記 <<<, 但是跟在后面的標志符要用 單引號括起來,就像<<<'EOT'這樣。heredocs結構的所有規則也同樣適用于nowdoc結 構,尤其是結束標志符的規則。

變量解析

字符串用雙引號或heredoc結構定義時,其中的變 量將會被解析。

這里共有兩種語法規則:一種簡單 規則,一種復雜規 則。簡單的句法規則是最常用和最方便的, 它可以用最少的代碼在一個字符串中加入變量, 數組 值,或 對象屬性。

復雜的句法規則是在PHP4以后加入的,被花括號包圍的表達式是其明顯標記。

簡單句法規則

當PHP解析器遇到一個美元符號 ($) , 它會和其它很多解析器一樣,去盡量形成一個合法的變量名。可以用花括 號來明確變量名的界線。

如果想要表達更復雜的結構,請用復雜句法規則。

復雜句法規則

復雜句法規則不是結構復雜而命名,而是因為它可以使用復雜的表達式。

任何想用在字符串中標量變量,數組變量或對象屬性都可使用這種方法。 只需簡單地像在字符串以外的地方那樣寫出表達式, 然后用花括號{和 }把它括起來。 由于 { 無法被轉義,只有 $ 要緊挨著 {才會被認出來,可以用 {$ 來表達 {$

存取和修改字符串中的字符

字符串中的字符可以通過一個以0為開始的,用類似數組結構中的方括號包含對應的數字來查找和修改,比如 $str[42], 可以把 字符串想像數組 。 函數 substr() 和 substr_replace()可以用來實現多于一個字符 的情況。

Warning方括號中的數字超出范圍將會產生空白。非整數類型被轉換成整數,非整數類型轉變成整數,非法類型會產生一個 E_NOTICE級別錯誤,負數在寫入時會產生一個E_NOTICE,但讀 取的是空字符串。被指定的字符串只有第一個字符可用,空字符串用指定為空字節。

有用的函數和操作符

字符串可以用'.' (點) 操作符連接起來, 注意 '+' (加號) 操作符沒有 這個功能。 

對于字符串的操作有很多有用的函數。

可以參考 字符串函數 了解大部分函數, 高級的查找&替換功能可以參考 正則表達式函數 或 Perl類型的正則 表達式函數

另外還有URL字符串的函數, 也有加密/解密字符串的函數。 (mcrypt 和 mhash).

最后,可以參考 字符類型函數

轉換成字符串

一個值可以通過在其前面加上(string)或用strval()函數來轉變成 字符串。 在一個需要字符串的表達式中,字符串會自動轉變,比如在使用函數 echo 或 print 時, 或在一個變量和一個 字符串 進行比較時,就會發生這種轉變 類型 和 類型轉換 可以更好的解釋下面的事情,也可參考函 數 settype() 。

 

一個boolean TRUE 值被轉換成 字符串"1"。 Boolean FALSE 被轉換成"" (空的字符串)。 這種轉變可以在 boolean 和 字符串 之間往返進行。

 

一個 整數 或 浮點數 被轉變為數字的字面樣式的字符串 (包括 浮點數中的指數部分),使用指數計數法的浮點數 (4.1E+6)也可轉變。

數組轉換成 字符串 "Array",因此, echo 和 print c無法顯示出該數組的值。如果顯示一個數組值,可以用 echo $arr['foo']這種結構,更多內容見下文。

在PHP 4中對象被轉換成 字符串 "Object", 為了調試原因需要打印出對象的值,方法見正文。為了得到對象的類的名稱,可以用 get_class() 函數。 在PHP5中, 可以用 __toString 。

資源總會被轉變成"Resource id #1"這種結構的字符串 , 其中的 1 是PHP分配給該資源的獨特數字。不用過多關注這種結構,它馬上要轉變了。為了得到一個 resource類型,可以用函數 get_resource_type()

NULL 總是被轉變成空的字符串。

如上面所說的,直接把數組, 對象或 資源 轉換成 字符串 不會得到超出其自身的更多信息。可以使用函數 print_r() 和 var_dump()列出這些類型的內容。

大部分的PHP值可以轉變成 字符串s 來長期儲存,這被稱作串行化,可以用函數 serialize() 來實現。 如果PHP引擎設定支持 WDDX , PHP值也可儲存成XML格式。

字符串轉變成數字

當一個字符串被用在了一個數字的環境中,結果和類型如下:

如果字符串沒有包含 '.','e'或'E' 并且數字值符合整數類型的限定 ( PHP_INT_MAX定義的), 這個 字符串 可被認定是一個 integer, 在其它情況下被認定為一個float

字符串的開始部分給定了它的值,如果 字符串 以合法的數字開始,這個數字可直接使用。 否則,值就是 0 (零)。 合法數值由符號,后面跟著一個或多個數字(可能有個小數點),再跟著可選的指數符號如'e' 或 'E',后面跟著一個或多個數字。

不要想像在C語言中的那樣,通過一個整數轉換得到相應字符,使用函數 ord() 和 chr() 實現ASCII碼和字符間的轉換。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 在线精品亚洲 | 亚洲一区二区视频在线观看 | 99热国产在线观看 | 欧美日韩在线免费观看 | 成人免费视屏 | 久久99国产精一区二区三区 | 久久免费国产 | 欧美女人性 | 自拍一区视频 | 美女超碰 | 高清免费毛片 | 国产精品区二区三区日本 | 久久久www| 在线播放中文字幕 | 亚洲精品视频在线看 | 91麻豆精品国产91久久久更新时间 | 欧美精品v国产精品v日韩精品 | 精品视频一区二区三区四区 | 亚洲国产视频一区二区 | 1000部精品久久久久久久久 | 亚洲一区二区中文字幕 | 日韩一区在线视频 | 中文字幕高清在线 | 黄色毛片在线看 | 高清国产一区二区三区 | 亚洲成人一区二区三区四区 | 亚洲精品一区二区在线 | 成人网在线观看 | 91视频观看| 国产人成在线观看 | 一区二区欧美在线 | 成人精品一区二区三区 | 少妇精品久久久久久久久久 | 亚洲精品国产精品国自产在线 | 欧美日韩一二区 | 欧美成人精品一区二区三区在线看 | 亚洲精品白浆高清久久久久久 | av免费资源| 亚洲成人在线观看视频 | 99色综合| 99热首页|