字符串是任何一門語言都有的一種數(shù)據(jù)類型拘泞,在這里。我主要講的是php的字符串語法結(jié)構(gòu)
有4種表達(dá)式表達(dá):
1叁扫、單引號(hào)
2三妈、雙引號(hào)
3、heredoc語法結(jié)構(gòu)
4莫绣、nowdoc語法結(jié)構(gòu)
<strong>1畴蒲、當(dāng)字符被包圍在 單引號(hào) ' 中時(shí),php解析只會(huì)單純的把其中的當(dāng)作字符來出來对室。</strong>
<strong>2模燥、當(dāng)字符被包圍在雙引號(hào) " 中時(shí),php解析會(huì)對(duì)一些特殊的字符進(jìn)行解析掩宜,如下字符</strong>
\n 換行(ASCI中的LF或0x0A(10))
\r 回車(ASCI中的CR或0x0D(13))
\t 水平制表符(ASCII 字符集中的 HT 或 0x09 (9))
\v 垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))(自 PHP 5.2.5 起)
\e Escape(ASCII 字符集中的 ESC 或 0x1B (27))(自 PHP 5.4.0 起)
\f 換頁(ASCII 字符集中的 FF 或 0x0C (12))(自 PHP 5.2.5 起)
\\ 反斜線
\$ 美元標(biāo)記
\" 雙引號(hào)
\[0-7]{1,3} 符合該正則表達(dá)式序列的是一個(gè)以八進(jìn)制方式來表達(dá)的字符
\x[0-9A-Fa-f]{1,2} 符合該正則表達(dá)式序列的是一個(gè)以十六進(jìn)制方式來表達(dá)的字符
變量解析
①當(dāng)一個(gè)變量被包圍在雙引號(hào)中蔫骂,變量照常解析,如下:
<?php
error_reporting(E_ALL);
$data = 'fantastic';
echo "This works: $data";
?>
將會(huì)有如下輸出
② {}花括號(hào)與 $美元符號(hào)的使用
<?php
error_reporting(E_ALL);
$data = 'fantastic';
echo "This works:{$data}";
echo "<br/>";
echo "This works:{ $data}";
echo "<br/>";
echo "This works:${ data}";
echo "<br/>";
echo "This works:${data}";
?>
這將會(huì)有如下輸出:
故:
1牺汤、花括號(hào)包圍美元符號(hào):{}花括號(hào)緊挨著$美元符號(hào)的時(shí)候辽旋,花括號(hào)會(huì)被解析出來,若沒有緊挨著,則會(huì)被當(dāng)作字符串輸出补胚。
2码耐、美元符號(hào)在花括號(hào)的前面:{}花括號(hào)緊挨著$美元符號(hào)的時(shí)候,會(huì)被當(dāng)作正常變量解析出來溶其,否則骚腥,其中的變量名,會(huì)被php認(rèn)為是常量瓶逃,而導(dǎo)致php提示束铭,不過解析還是能解析的出來的
數(shù)組中 {}花括號(hào)與 $美元符號(hào)的使用
<?php
error_reporting(E_ALL);
$data['fu'] = 'fantastic';
echo "This works:{$data['fu']}";
echo "<br/>";
echo "This works:{$data[fu]}";
echo "<br/>";
echo "This works:{ $data[fu]}";
echo "<br/>";
echo "This works:$data[fu]";
?>
會(huì)導(dǎo)致如下的輸出
字符串轉(zhuǎn)數(shù)值
當(dāng)字符串被當(dāng)作一個(gè)數(shù)值來運(yùn)算時(shí),字符串會(huì)被轉(zhuǎn)成相應(yīng)的數(shù)值厢绝,具體如下:
1契沫、當(dāng)字符串沒有包含 “.” 、“e”代芜、“E”時(shí)埠褪,并且在整形范圍內(nèi)(由PHP_INT_MAX定義)浓利,該字符串會(huì)被當(dāng)作整形integer來取值挤庇,否則為float來取值。
2贷掖、該字符串的開始部分決定了它的值嫡秕。如果該字符串以合法的數(shù)值開始,則使用該數(shù)值苹威。否則其值為 0(零)昆咽。合法數(shù)值由可選的正負(fù)號(hào),后面跟著一個(gè)或多個(gè)數(shù)字(可能有小數(shù)點(diǎn))牙甫,再跟著可選的指數(shù)部分掷酗。指數(shù)部分由 'e' 或 'E' 后面跟著一個(gè)或多個(gè)數(shù)字構(gòu)成。
以下是代碼示例
<?php
$foo = 1 + "10.5"; // $foo is float (11.5)
$foo = 1 + "-1.3e3"; // $foo is float (-1299)
$foo = 1 + "bob-1.3e3"; // $foo is integer (1)
$foo = 1 + "bob3"; // $foo is integer (1)
$foo = 1 + "10 Small Pigs"; // $foo is integer (11)
$foo = 4 + "10.2 Little Piggies"; // $foo is float (14.2)
$foo = "10.0 pigs " + 1; // $foo is float (11)
$foo = "10.0 pigs " + 1.0; // $foo is float (11)
?>