深入理解PHP字串函數_PHP教程

來源:互聯網
上載者:User
我們大家知道無論哪種語言,字串操作都是一個重要的基礎,往往是簡單而重要。正像人說話一樣,一般有形體(圖形介面),有語言(print 字串?),顯然字串能解釋更多的東西。PHP提供了大量的字串操作函數,功能強大,使用也比較簡單, 以下將簡單的講述PHP字串函數的功能和特性。

PHP字串函數弱類型

PHP是弱類型語言,所以其它類型的資料一般可以直接應用於字串操作函數裡,而自動轉換成字串類型,進行處理,如:echo substr("1234567", 1, 3);和echo substr(123456,1, 3);是一樣的定義一般用雙引號或單引號標識一個字串。比如

 
  1. $str = "i love u";
  2. $str = 'i love u';

它者兩者是有一些區別的。後者將一切單引號的內容都會當作字元處理;前者則不然。比如

 
  1. $test = "iwind";
  2. $str = "i love $test";
  3. $str1 = 'i love $test';
  4. echo $str; //將得到 i love iwind
  5. echo $str1; //將得到 i love $test

同樣的以下兩個例子的行為也不一樣的:

 
  1. echo "i love test"; // 將得到 i love est,已經將t視為轉義
  2. echo 'i love test'; // 將得到 i love test

從而可以簡單認為雙引號裡的內容是經過“解釋”過的,單引號的是“所見即所得 (WYSIWYG)”的(特殊地,''會被認作一個'')。顯而易見,雙引號形式的更為靈活一些,當然單引號會適用於一些特殊的場合,這裡就不作闡述了。輸出PHP裡的輸出最常用的是echo,print.兩者都不是真正的函數,而是語言構造,所以調用時不必用雙括弧(比如echo("test");print("test")).在輸出的時候兩者都可以實現賦值:echo $str="test";一方面輸出test,一方面把"test"賦給字串變數 $strprint $str="test";兩者除了名字不一樣外,還是有其它區別的。print具有傳回值,一直返回1,而echo沒有,所以echo比print要快一些:

 
  1. $return = print "test";
  2. echo $return; // 輸出1

也正因為這個原因,print能應用於複合陳述式中,而echo不能:

 
  1. isset($str) or print "str 變數未定義"; // 將輸出"str 變數未定義"
  2. isset($str) or echo "str 變數未定義";// 將提示分析錯誤
  3. echo一次可輸出多個字串,而print則不可以:
  4. echo "i ","love ","iwind"; // 將輸出 "i love iwind"
  5. print "i ","love ","iwind"; // 將提示錯誤
  6. echo,print還可以輸出被稱作“文檔句法”的字串,句法如:
  7. echo <<< 標籤名稱

PHP字串函數內容標籤名稱;比如

 
  1. echo <<< test
  2. i love iwind
  3. test;

要注意的是語句開始和結束的兩個標籤名稱是一樣的,且後一個標籤名稱前不能有空白,即要頂格寫。文檔句法輸出的內容識別變數名稱和常用符號,大致形同雙引號的作用。輸出echo,print外,PHP還提供了一些格式化字串的函數,比如printf,sprintf,vprintf,vsprintf,在這裡不作詳解。


http://www.bkjia.com/PHPjc/446472.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446472.htmlTechArticle我們大家知道無論哪種語言,字串操作都是一個重要的基礎,往往是簡單而重要。正像人說話一樣,一般有形體(圖形介面),有語言(...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.