一、判斷類型的函數(shù)
is_bool() //判斷是否為布爾型
is_float() //判斷是否為浮點(diǎn)型
is_real() //同上
is_int() //判斷是否為整型
is_integer() //同上
is_string() //判斷是否為字符串
is_object() //判斷是否為對象
is_array() //判斷是否為數(shù)組
is_null() //判斷是否為null
is_file() //判斷是否為文件
is_dir() //判斷是否為目錄
is_numeric() //判斷是否為數(shù)字
is_nan() //判斷不是數(shù)字
is_resource() //判斷是否為資源類型
is_a($obj,$classname) //判斷對象是否為類的實(shí)例
//可用 if($obj instanceof Classname)
二、獲取子串位置
strpos($hs,$nd [,int $offset = 0 ]) //返回nd 在 hs 中首次出現(xiàn)的數(shù)字位置。
stripos($hs,$nd [,int $offset = 0 ]) //返回nd 在 hs 中首次出現(xiàn)的數(shù)字位置, 不區(qū)分大小寫。
strrpos($hs,$nd [,int $offset = 0 ]) //返回nd 在 hs 中最后一次出現(xiàn)的數(shù)字位置。
strripos($hs,$nd [,int $offset = 0 ]) //返回nd 在 hs 中最后一次出現(xiàn)的數(shù)字位置,不區(qū)分大小寫。
三、獲取子串
substr($str,$start [,$length]); //獲取子串
substr_compare($main_str,$str,$offset[,$length]); //子串比較 從offset處開始比較
substr_count($hs,$nd [,$offset=0 [,$length]]); //獲取子串nd在hs中出現(xiàn)的次數(shù)
substr_replace($string,$replacement,$start [,$length]); //字符串子串替換
//用$replacement替換掉$string從start開始長度為length的子串
strstr($hys,$nd [,bool $before_needle = false ]);//返回$nd在$hys 第一次出現(xiàn)的地方開始到字符串結(jié)束 為止的字符串
//第三個參數(shù)如果為true 則返回$nd 之前的字符串
stristr($hys,$nd [,bool $before_needle = false ]); //同上,忽略大小寫版本
strrchr($hys,$nd); //返回$nd在$hys最后一次出現(xiàn)的地方開始到字符串結(jié)束 為止的字符串
//一般和 substr(strrchr($hys,$nd),strlen($nd)); 合用
strpbrk($haystack,$char_list);//從$char_list中依次匹配單個字符在$haystack中第一次出現(xiàn)的地方
//到字符串結(jié)束的地方 的整個字符串
strtok($str,$token); //第一次使用 將字符串按分隔符$token進(jìn)行分割
strtok($token); //第二次使用
eg.
$string = "This is\tan example\nstring";
/* 使用制表符和換行符作為分界符 */
$tok = strtok($string, " \n\t");
while ($tok !== false) {
echo "Word=$tokbr />";
$tok = strtok(" \n\t");
}
四、字符串str_ 型函數(shù)
str_getcsv($str); //將csv文件字符串轉(zhuǎn)換成一個數(shù)組
str_replace($search,$replace,$subject [,$count]);//搜索并替換字符串
//第四個參數(shù)被指定的話,將會賦值給他替換的次數(shù)
str_ireplace($search,$replace,$subject [,$count]);//搜索并替換字符串
//第四個參數(shù)被指定的話,將會賦值給他替換的次數(shù) 忽略大小寫
str_shuffle(string $str);//隨機(jī)打亂字符串
str_split($str [,$len=1]);//將字符串轉(zhuǎn)換成一個數(shù)組
//,每個數(shù)組單元的長度為$len
五、字符串長度
strlen($str); //字符串長度
六、翻轉(zhuǎn)字符串
strrev(string $string);// 翻轉(zhuǎn)字符串
七、mb_類型字符串函數(shù)
mb_類型字符串與上述字符串函數(shù)基本一樣,
只是加多一個可選的字符編碼參數(shù),用法同上
這里列出一些其他有用函數(shù)
1、檢測字符串的字符編碼
$encode = mb_detect_encoding($lines, array("ASCII","UTF-8","GB2312","GBK","BIG5"));
if($encode != "UTF-8"){
$lines = iconv($encode,"UTF-8", $lines);
}
八、字符串的相關(guān)操作
1、轉(zhuǎn)換字符串類型
strval($str); //轉(zhuǎn)換成字符串類型
floatval($str);//轉(zhuǎn)換成浮點(diǎn)型
intval($str); //轉(zhuǎn)換成整型
2、大小寫轉(zhuǎn)換
strtolower($str); //全部轉(zhuǎn)換成小寫
strtoupper($str); //全部轉(zhuǎn)換成大寫
3、字符串轉(zhuǎn)時間戳
strtotime($str); //時間格式的字符串轉(zhuǎn)換成整型時間戳
//注意設(shè)置時區(qū) 否則會有 8小時誤差
4、去除HTML 和 PHP 標(biāo)記
strip_tags($str [,$tags]);//去除不含$tags里標(biāo)簽外的所有標(biāo)簽
5、ascii轉(zhuǎn)數(shù)字 數(shù)字轉(zhuǎn)ascii
chr(int $ascii); //數(shù)字轉(zhuǎn)換成ascii
ord(string $str); //返回$str第一個字符的ascii值
6、json的編碼與解碼
json_encode($obj/$arr/$str...);//編碼成json 格式的字符串
json_decode($jsonstr [,$assoc=true]); //解碼成對象
//當(dāng)$assoc=true 時 返回?cái)?shù)組 而非對象
7、換行轉(zhuǎn)br/>
nl2br($str); //字符串 $str 所有新行之前插入'br/>'
8、數(shù)組轉(zhuǎn)字符串,字符串轉(zhuǎn)數(shù)組
implode($arr,$glue);//將一維數(shù)組轉(zhuǎn)換為字符串
explode();//字符串轉(zhuǎn)換為數(shù)組
9、千位分割格式化
string number_format ( float $number [, int $decimals = 0 ] )
string number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )
@param $number 你要格式化的數(shù)字
$decimals 要保留的小數(shù)位數(shù)
$dec_point 指定小數(shù)點(diǎn)顯示的字符
$thousands_sep 指定千位分隔符顯示的字符
10、去空格
trim(string $str [,string $charlist ]); //去左右字符
ltrim(string $str [,string $charlist ]); //去左字符
rtrim(string $str [,string $charlist ]); //去右字符
該函數(shù)刪除 str 末端的空白字符并返回。
不使用第二個參數(shù), rtrim() 僅刪除以下字符:
• " " (ASCII 32 (0x20)),普通空白符。
• "\t" (ASCII 9 (0x09)),制表符。
• "\n" (ASCII 10 (0x0A)),換行符。
• "\r" (ASCII 13 (0x0D)),回車符。
• "\0" (ASCII 0 (0x00)),NUL 空字節(jié)符。
• "\x0B" (ASCII 11 (0x0B)),垂直制表符。
過濾字符也可由 charlist 參數(shù)指定。一般要列出所有希望過濾的字符,
也可以使用 ".." 列出一個字符范圍
11、轉(zhuǎn)換字符串編碼函數(shù)
iconv($in_charset, $out_charset, $str);
$in_charset輸入字符集
$out_charset輸出字符集
12、字符串加密函數(shù)
13、字符串轉(zhuǎn)義與反轉(zhuǎn)義函數(shù)
addcslashes(string $str , string $charlist);//轉(zhuǎn)義字符串中的特殊字符
//eg. addcslashes($str,"\0..\37!@\177..\377");
//轉(zhuǎn)義ascii 中0-37、177-377中不含@符號的字符
stripcslashes($str) — 反轉(zhuǎn)義addcslashes()函數(shù)轉(zhuǎn)義處理過的字符串
返回反轉(zhuǎn)義后的字符串??勺R別類似 C 語言的 \n,\r,... 八進(jìn)制以及十六進(jìn)制的描述
14、按格式返回?cái)?shù)據(jù)
sprintf — 按照要求對數(shù)據(jù)進(jìn)行返回,但是不輸出
可表示類型如下:
string s
integer d, u, c, o, x, X, b
double g, G, e, E, f, F
eg.
$num = 5;
$location = 'tree';
$format = 'There are %d monkeys in the %s';
echo sprintf($format, $num, $location);
這篇關(guān)于php常用字符串函數(shù)的文章就介紹到這了,希望大家可以多參考腳本之家以前發(fā)布的文章。
您可能感興趣的文章:- php 常用字符串函數(shù)總結(jié)
- PHP 截取字符串函數(shù)整理(支持gb2312和utf-8)
- php截取字符串函數(shù)substr,iconv_substr,mb_substr示例以及優(yōu)劣分析
- 探討各種PHP字符串函數(shù)的總結(jié)分析
- php 字符串函數(shù)收集
- php字符串函數(shù)學(xué)習(xí)之strstr()
- 如何使用PHP中的字符串函數(shù)
- 如何使用PHP中的字符串函數(shù)
- php截取字符串函數(shù)分享
- php字符串函數(shù) str類常見用法示例
- PHP常用字符串函數(shù)用法實(shí)例總結(jié)