1. 字符串的表現形式 在PHP中,字符串有三種表現形式:單引號,雙引號,以及heredoc。
PHP手冊建議,在一般情況下,盡量使用單引號的字符串。如果需要轉義變量,才使用雙引號的字符串。如果需要多行顯示,才使用heredoc。
heredoc形式:
復制代碼 代碼如下:
<?php
$test=<<< FOOBAR
Hello World!
Hello PHP!
FOOBAR;
echo $test;
?>
Heredoc是有著開始符和結束符的一段文字,在本段程序中為FOOBAR,不過個人建議最好使用更復雜的字符串,這樣的話可以避免在字符串中遇到與其同樣的文本而發生錯誤。
另外,需要注意的一點就是,在heredoc中並非是空格無關的,所以最後一行結尾符一定要在該行開頭(無空格和縮進)。我就因為這個調試了N久,囧…….
但是在一般應用中,heredoc不是很常用的。
關於單引號和雙引號的區別,可以參考我之前的文章:
2. 字符串的輸出
關於字符串的輸出,其實有很多方式,但是在這裡個人認為只介紹有用的三個:
A. echo 這個是最常用的字符串的輸出形式,但是在這裡需要知道echo不是函數,而是語言結構,區別是函數都是有返回值的,但是語言結構是沒有返回值的。當然,這個了解就可以了。
B. printf 這個常用於字符串先組合後打印,其實很類似於String.Format然後再打印,如果大家學過C語言,一定會這段代碼很熟悉,就不多做解釋了:
復制代碼 代碼如下:
<?php
printf('Hello %s,I am %d','world',22);
?>
C. print_r,這個函數主要用於調試,該函數的最大好處是能把一些亂七八糟的東西都打印出來,舉個例子:
復制代碼 代碼如下:
<?php
class People
{
private $name;
public function People($name)
{
$this->name=$name;
}
public function Say()
{
echo('Hello'.$name);
}
}
$p=new People("kym");
print_r($p);
?>
還可以是:
復制代碼 代碼如下:
<?php
$arr=array('1'=>'kym','2'=>'sina','3'=>'blog');
print_r($arr);
?>
但是這個函數也有個缺點:
復制代碼 代碼如下:
<?php
print_r(true);
print_r(false);
?>
結果發現無法正常打印。那麼這時這個函數相對來說就更適合於調試了。
D. var_dump,這個函數相比於print_r最大的優勢就在於可以打印出true和false。其余用法一致。
3. 字符串的常用函數
腳本語言一向以字符串處理為榮,那麼我就來看下常用的字符串處理函數。我們可以查閱一下PHP的字符串函數庫。
其中,個人認為常用的只有這麼幾個:
復制代碼 代碼如下:
<?php
$str='HelloPHP';
md5($str); //MD5加密
for($i=0;$i<strlen($str);$i++)
{
echo($str($i));
}
strtoupper($str); //轉成大寫
strtolower($str); //轉成小寫
trim($str); //去掉首位的空白
rtrim($str); //去掉右邊的空白
ltrim($str); //去掉左邊的空白
strrev($str); //字符串反轉
?>
感覺沒幾個的,一寫起來感覺都很有用,算了,還是看手冊吧。