在編程的時候,特定的字符串連接,使用運算符句點(.)
$greet="hello, " . "world!";
也可使用:
$greeting="hello, "; $greeting .= "world!"
PHP 在處理字符串變量的時候,使用變量替換他們的值:
$greeting="$s1$s2"
PHP 中的 nl2br() 函數(shù)能夠將換行符自動換為 break 標簽
比如:
<p>備注:
<textarea name="commit" rows="3" cols="30"></textarea>
</p>
//把textare中輸入的換行符轉為break
print nl2br($_POST["commit"]);
用戶在表單中可以輸入 HTML 字符,這樣將對頁面的格式產(chǎn)生影響,更糟糕的情況是可能引發(fā)安全方面的問題,所以有必要處理字符串變量中的 HTML 標簽
處理字符串中的HTML標簽的函數(shù)有:
htmlspecialchars
和htmlentities
會把 HTML 標簽轉義,比如:
輸入<script>alert(1)</script>
會得到<script>alert(1)</script>gt;
在使用 GET 方法的時候,是把數(shù)據(jù)通過 URL 傳遞的,如果想在傳遞的數(shù)據(jù)中有多個詞以及特殊的符號那就需要對數(shù)據(jù)進行編碼
urlencode 函數(shù)可以對一個字符串進行編碼,使它能夠完全適合 URL 的傳輸,它會用+號替換空格,并把特殊字符替換
<?php
$name = "hello,world!\ndaige ";
$name = urlencode($name);
$uid="123456";
$uid=urlencode($uid);
print "Click <a href=\"name.php?name=$name&uid=$uid \">here</a> to continue";
?>
編碼之后的 URL 為:
name.php?name=hello%2Cworld%21%0Adaige+&uid=123456
當我們點擊此鏈接的后,我們并不需要使用 urldecode 函數(shù)來解碼才能獲取數(shù)據(jù),因為 PHP 會自動解碼
字符串的加密和解密:
PHP 可以使用 crypt 函數(shù)來對數(shù)據(jù)進行加密,注意它是單向加密
另外 Mcrypt 擴展中提供了一對加密解密函數(shù):mcrypt_encrypt()和 mcrypt_decrypt()
PHP 提供一些函數(shù)用來拆解,搜索和比較字符串