php符号教程,PHP教程:网站开发编程中的特殊符号处理_php
1 php中單引號(hào)與雙引號(hào)的區(qū)別
在PHP中,通常一個(gè)字符串被定義在一對(duì)引號(hào)中,如:
'I am a string in single quotes'
http://www.gaodaima.com/48558.htmlPHP教程:網(wǎng)站開發(fā)編程中的特殊符號(hào)處理_php
"I am a string in double quotes"
PHP語法分析器是用成對(duì)的引號(hào)來判斷一個(gè)字符串的。因此,所有字符串必須使用同一種單或者雙
引號(hào)來定義開始和結(jié)束。例如,下面的字串定義是不合法的:
"I am not a valid string since I have unmatching quote marks'
'Me neither!"
定義字符串時(shí),只有一種引號(hào)被視為定義符,即單引號(hào)或雙引號(hào)。于是,如果一個(gè)字符串由雙引
號(hào)開始,那么只有雙引號(hào)被分析器解析。這樣,你就可以在雙引號(hào)串中包含任何其他字符,甚至單引
號(hào)。下面的引號(hào)串都是合法的:
$s = "I am a 'single quote string' inside a double quote string";
$s = 'I am a "double quote string" inside a single quote string';
當(dāng)PHP遇到與串的開頭相對(duì)應(yīng)的引號(hào)時(shí),便認(rèn)為已經(jīng)到了字符串尾部,于是:
"Why doesn't "this" work?"
實(shí)際上被PHP語法分析器分成三個(gè)部分:
"Why doesn't "——包含一個(gè)單引號(hào)的雙引號(hào)串
this——多余的字符,分析器無法處理
" work?" ——普通字符串
上面的這個(gè)例子企圖在雙引號(hào)串中包含雙引號(hào),而分析器在遇到第二個(gè)雙引號(hào)時(shí)便認(rèn)為字符串結(jié)
束了。要達(dá)到包含引號(hào)的目的,必須分析器在遇到串內(nèi)普通引號(hào)的時(shí)候忽略它的原意,我們?cè)谝?hào)的
前面加上一個(gè)反斜杠來告訴PHP:這個(gè)引號(hào)是字符串的一部分,正確的表示方法是這樣:
"Why doesn't /"that/" work?"
在英文字符串中一個(gè)常見的問題是撇號(hào)'的使用,因?yàn)樗褪且粋€(gè)單引號(hào),而在英文串中十分常見
(英文所有格)。你必須小心處理這些字符:
'You/'d better escape your apostrophes'
可以看到反斜杠在字符串中有他的特殊含義,當(dāng)我們需要在字符串中包含反斜杠本身時(shí),需要在
該符號(hào)前面多加一個(gè)反斜杠。例如:
$file = "c:/windows/system.ini";
echo $file; // 打印結(jié)果為: c:windowssystem.ini
$file = "c://windows//system.ini";
echo $file; // 打印結(jié)果為: c:/windows/system.ini
另一種字符串定義方式,能夠消除特殊字符的煩惱,而且便于引用較長的文本。該字符串定義方
法以<<
二、字串的連接
字串可以使用字串連接符(.)來連接,如:
$first_name = 'Charlie';
$last_name = 'Brown';
$full_name = $first_name . ' ' . $last_name;
常見的用途是建立大塊的HTML字串代碼,賦值號(hào) (=) 連接符 (.) 可以被簡寫合并為 (.=) 符
號(hào),如:
$html = '
$html .= '
numbersquare';for ( $i=0 ; $i<10 ; $i++) {
$square = $i * $i;
$html .= '
' . $i . '' . $square . '';}
$html .= '
';三、在字串中使用變量
這個(gè)功能讓你無須使用連接符號(hào)來粘和大量的簡單字符串。PHP允許我們?cè)陔p引號(hào)串中直接包含字
串變量,我們可以發(fā)現(xiàn)下面的兩個(gè)字串的處理結(jié)果是相同的。
$full_name = $first_name . ' ' . $last_name;
$full_name = "$first_name $last_name";
單引號(hào)串和雙引號(hào)串在PHP中的處理是不相同的。雙引號(hào)串中的內(nèi)容可以被解釋而且替換,而單引
號(hào)串中的內(nèi)容總被認(rèn)為是普通字符。例如:
$foo = 2;
echo "foo is $foo"; // 打印結(jié)果: foo is 2
echo 'foo is $foo'; // 打印結(jié)果: foo is $foo
echo "foo is $foo/n"; // 打印結(jié)果: foo is 2 (同時(shí)換行)
echo 'foo is $foo/n'; // 打印結(jié)果: foo is $foo/n
正如你所看到的,在單引號(hào)串中甚至反斜杠也失去了他的擴(kuò)展含義(除了插入反斜杠//和插入單
2 PHP中單引號(hào)與雙引號(hào)的區(qū)別
總結(jié)
以上是生活随笔為你收集整理的php符号教程,PHP教程:网站开发编程中的特殊符号处理_php的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 股票里委托的第二天就会失效吗?
- 下一篇: 如何利用成交量均线判断股票走势?