關於PHP內建的字串處理函數詳解

來源:互聯網
上載者:User
字串的特點

1. 其他類型的資料用在字串類型處理函數中,會自動將其轉化成字串後,在處理

<?phpecho substr("abcdefghijklmn",2,4),"<br>";  //cdef//使用數字會自動轉化為字串echo substr(123456,2,4);  //3456?>

2. 可以將字串視為數組,當做字元集合來看待

<?php$str="abcdefg"; //下面這兩種方法都可以輸出想要的字元echo $str[2]."<br>";//但是為了區分數組我們常用下面一種echo $str{2}."<br>";?>

強大的內建的字串處理函數

1. 常用的字串輸出函數

echo()
print()
die()----exit()
printf() 格式化字串
sprintf() 返回格式化的字串

2. 常用的字串格式化函數

去掉字元
ltrim(); 去掉左邊的字串(預設去掉空格)
rtrim(); 去掉右邊的字串
trim(); 去掉兩邊的字串

<?php$str="  abc  "; echo strlen($str)."<br>";echo strlen(ltrim($str))."<br>";echo strlen(rtrim($str))."<br>";echo strlen(trim($str))."<br>"; $str1="123This is Test"; //第二個參數指定要刪除的字元(串)echo ltrim($str1,'1')."<br>";//刪除所有的數字  0..9表示範圍echo ltrim($str1,'0..9')."<br>";?>

添加字串

str_pad(); 添加字串(預設在右邊添加)

<?php$str="hello"; //預設從右邊補充echo str_pad($str,10,"@")."<br>";//兩邊補充echo str_pad($str,10,"@",STR_PAD_BOTH)."<br>";//從左邊補充echo str_pad($str,10,"@",STR_PAD_LEFT)."<br>";?>

大小寫轉換

strtolower(); 所有的字元都轉化成小寫
strtoupper(); 所有的字元都轉化成大寫
ucfirst(); 首字母轉化成大寫
ucword(); 每個單詞首字母轉成大寫

<?php$str="My name is TOM!"; echo strtoupper($str)."<br>";echo strtolower($str)."<br>";echo ucfirst($str)."<br>";echo ucwords($str)."<br>";?>

和HTML標籤有關的字串格式化

nl2br(); 函數在字串中的每個新行 (\n) 之前插入 HTML 分行符號 (<br />)。

htmlentities(); 函數把字元轉換為 HTML 實體。

htmllspeciachars(); 函數把一些預定義的字元轉換為 HTML 實體。

預定義的字元是:
& (和號) 成為 &
""(雙引號) 成為 "
''(單引號) 成為 '
< (小於) 成為 <
> (大於) 成為 >

stripslashes(); 函數刪除由 addslashes() 函數添加的反斜線。

addslashes() 函數在指定的預定義字元前添加反斜線。

這些預定義字元是:

單引號 (')

雙引號 (")

反斜線 (\)

NULL

strip_tags(); 函數剝去 HTML、XML 以及 PHP 的標籤。

<form>  input:<input type="text" name="str" size="100">     <input type="submit" name="sub" value="提交">     <br></form>  <?phpecho $_GET["str"]."<br>";//函數把字元轉換為 HTML 實體。echo htmlentities($_GET["str"],ENT_NOQUOTES)."<br>";//函數把一些預定義的字元轉換為 HTML 實體。echo htmlspecialchars($_GET["str"])."<br>";//去掉由addslashes()函數加的 \echo stripslashes($_GET["str"])."<br>";//結合使用echo htmlentities(stripslashes($_GET["str"]))."<br>";  // 函數剝去 HTML、XML 以及 PHP 的標籤。echo strip_tags($_GET["str"])."<br>";?>

number_format(); 函數通過千位分組來格式化數字。

<?php$a=1000000.12345; echo $a."<br>";echo number_format($a)."<br>";//小數點保留三位,千分位用“,”隔開,小數點用“.”echo number_format($a,3,'.',',')."<br>";?>

strrev(); 函數反轉字串

<?php$str="Hello World!"; echo $str."<br>";echo strrev($str)."<br>";?>

md5();

Function Compute字串的 MD5 散列。

md5() 函數使用 RSA 資料安全,包括 MD5 報文摘譯演算法。

如果成功,則返回所計算的 MD5 散列,如果失敗,則返回 false。

<?php$pass="1234#!_56"; if(md5($pass)=="a8affa3d7aca3a35a39f674e1e5f0cc7")  echo "Ok!";?>


md5_file();

Function Compute檔案的 MD5 散列。

md5() 函數使用 RSA 資料安全,包括 MD5 報文摘譯演算法。

如果成功,則返回所計算的 MD5 散列,如果失敗,則返回 false。

3.字串比較函數

strcmp(); 函數比較兩個字串。

0 - 如果兩個字串相等

<0 - 如果 string1 小於 string2

>0 - 如果 string1 大於 string2

strcasecmp();

strnatcmp();

<?php$str1="abcd";$str2="abcd"; if(strcmp($str1,$str2)==0){  echo '$str1=$str2';}elseif(strcmp(str1,$str2)>0){  echo '$str1>$str2';}else{  echo '$str1<$str2';}?>


以上這篇關於PHP內建的字串處理函數詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援topic.alibabacloud.com。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.