關(guān)于PHP內(nèi)置的字符串處理函數(shù)詳解
字符串的特點
1. 其他類型的數(shù)據(jù)用在字符串類型處理函數(shù)中,會自動將其轉(zhuǎn)化成字符串后,在處理
<?php echo substr("abcdefghijklmn",2,4),"<br>"; //cdef //使用數(shù)字會自動轉(zhuǎn)化為字符串 echo substr(123456,2,4); //3456 ?>
2. 可以將字符串視為數(shù)組,當做字符集合來看待
<?php $str="abcdefg"; //下面這兩種方法都可以輸出想要的字符 echo $str[2]."<br>"; //但是為了區(qū)分數(shù)組我們常用下面一種 echo $str{2}."<br>"; ?>
強大的內(nèi)置的字符串處理函數(shù)
1. 常用的字符串輸出函數(shù)
echo()
print()
die()----exit()
printf() 格式化字符串
sprintf() 返回格式化的字符串
2. 常用的字符串格式化函數(shù)
去掉字符
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"; //第二個參數(shù)指定要刪除的字符(串) echo ltrim($str1,'1')."<br>"; //刪除所有的數(shù)字 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>"; ?>
大小寫轉(zhuǎn)換
strtolower(); 所有的字符都轉(zhuǎn)化成小寫
strtoupper(); 所有的字符都轉(zhuǎn)化成大寫
ucfirst(); 首字母轉(zhuǎn)化成大寫
ucword(); 每個單詞首字母轉(zhuǎn)成大寫
<?php $str="My name is TOM!"; echo strtoupper($str)."<br>"; echo strtolower($str)."<br>"; echo ucfirst($str)."<br>"; echo ucwords($str)."<br>"; ?>
和HTML標簽有關(guān)的字符串格式化
nl2br(); 函數(shù)在字符串中的每個新行 (\n) 之前插入 HTML 換行符 (<br />)。
htmlentities(); 函數(shù)把字符轉(zhuǎn)換為 HTML 實體。
htmllspeciachars(); 函數(shù)把一些預(yù)定義的字符轉(zhuǎn)換為 HTML 實體。
預(yù)定義的字符是:
& (和號) 成為 &
""(雙引號) 成為 "
''(單引號) 成為 '
< (小于) 成為 <
> (大于) 成為 >
stripslashes(); 函數(shù)刪除由 addslashes() 函數(shù)添加的反斜杠。
addslashes() 函數(shù)在指定的預(yù)定義字符前添加反斜杠。
這些預(yù)定義字符是:
單引號 (')
雙引號 (")
反斜杠 (\)
NULL
strip_tags(); 函數(shù)剝?nèi)?HTML、XML 以及 PHP 的標簽。
<form> input:<input type="text" name="str" size="100"> <input type="submit" name="sub" value="提交"> <br> </form> <?php echo $_GET["str"]."<br>"; //函數(shù)把字符轉(zhuǎn)換為 HTML 實體。 echo htmlentities($_GET["str"],ENT_NOQUOTES)."<br>"; //函數(shù)把一些預(yù)定義的字符轉(zhuǎn)換為 HTML 實體。 echo htmlspecialchars($_GET["str"])."<br>"; //去掉由addslashes()函數(shù)加的 \ echo stripslashes($_GET["str"])."<br>"; //結(jié)合使用 echo htmlentities(stripslashes($_GET["str"]))."<br>"; // 函數(shù)剝?nèi)?HTML、XML 以及 PHP 的標簽。 echo strip_tags($_GET["str"])."<br>"; ?>
number_format(); 函數(shù)通過千位分組來格式化數(shù)字。
<?php $a=1000000.12345; echo $a."<br>"; echo number_format($a)."<br>"; //小數(shù)點保留三位,千分位用“,”隔開,小數(shù)點用“.” echo number_format($a,3,'.',',')."<br>"; ?>
strrev(); 函數(shù)反轉(zhuǎn)字符串
<?php $str="Hello World!"; echo $str."<br>"; echo strrev($str)."<br>"; ?>
md5();
函數(shù)計算字符串的 MD5 散列。
md5() 函數(shù)使用 RSA 數(shù)據(jù)安全,包括 MD5 報文摘譯算法。
如果成功,則返回所計算的 MD5 散列,如果失敗,則返回 false。
<?php $pass="1234#!_56"; if(md5($pass)=="a8affa3d7aca3a35a39f674e1e5f0cc7") echo "Ok!"; ?>
md5_file();
函數(shù)計算文件的 MD5 散列。
md5() 函數(shù)使用 RSA 數(shù)據(jù)安全,包括 MD5 報文摘譯算法。
如果成功,則返回所計算的 MD5 散列,如果失敗,則返回 false。
3.字符串比較函數(shù)
strcmp(); 函數(shù)比較兩個字符串。
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'; } ?>
以上這篇關(guān)于PHP內(nèi)置的字符串處理函數(shù)詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- PHP中的函數(shù)嵌套層數(shù)限制分析
- php初始化對象和析構(gòu)函數(shù)的簡單實例
- PHP使用內(nèi)置函數(shù)file_put_contents寫入文件及追加內(nèi)容的方法
- PHP使用內(nèi)置函數(shù)生成圖片的方法詳解
- 幾個實用的PHP內(nèi)置函數(shù)使用指南
- 使用php重新實現(xiàn)PHP腳本引擎內(nèi)置函數(shù)
- PHP內(nèi)置函數(shù)生成隨機數(shù)實例
- PHP 查找字符串常用函數(shù)介紹
- PHP函數(shù)篇詳解十進制、二進制、八進制和十六進制轉(zhuǎn)換函數(shù)說明
- PHP取整數(shù)函數(shù)常用的四種方法小結(jié)
- PHP常用函數(shù)總結(jié)(180多個)
- PHP函數(shù)用法詳解【初始化、嵌套、內(nèi)置函數(shù)等】
相關(guān)文章
PhpStorm 如何優(yōu)雅的調(diào)試Hyperf的方法步驟
這篇文章主要介紹了PhpStorm 如何優(yōu)雅的調(diào)試Hyperf的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-11-11CI框架實現(xiàn)創(chuàng)建自定義類庫的方法
這篇文章主要介紹了CI框架實現(xiàn)創(chuàng)建自定義類庫的方法,結(jié)合實例形式分析了CI框架創(chuàng)建自定義類庫的相關(guān)原理、步驟、實現(xiàn)方法與操作注意事項,需要的朋友可以參考下2018-12-12安裝PHP擴展時解壓官方 tgz 文件后沒有configure文件無法進行配置編譯的問題
這篇文章主要介紹了安裝PHP擴展時解壓官方 tgz 文件后沒有configure文件無法進行配置編譯的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2020-08-08PHP設(shè)計模式之策略模式(Strategy)入門與應(yīng)用案例詳解
這篇文章主要介紹了PHP設(shè)計模式之策略模式(Strategy)入門與應(yīng)用,結(jié)合具體實例形式詳細分析了PHP策略模式的相關(guān)概念、原理、使用方法及操作注意事項,需要的朋友可以參考下2019-12-12