php常用函数
在php中最主要用到的就是字符串和数组的处理函数,所以掌握php字符串和数组相关的函数至关重要
1、字符串处理函数
(1)str_replace — 子字符串替换
语法格式:str_replace(mixed $search , mixed $replace , mixed $subject [, int &$count ])
作用:该函数返回字符串或者数组,也就是subject中的search都被replace替换
如果search和replace是数组,那么str_replaceh将会对subject做二者的映射替换,假如replace的值的个数少于search的个数,多余的替换将要使用空字符串来替换。如果search是个数组而replace是个字符 串,那么search中每个元素的替换将始终使用这个字符串。转换不会改变大小写。
参数:search- 要在subject中查找的目标值,也就是needle。一个数组可以指定多个目标
replace-srearch的替换值。一个数组可以被用来指定多重替换。
subject-执行替换的数组或者字符串。也就是haystack。如果subject是一个数组,替换将会遍历操作整个subject,返回值也会是个数组
count-如果被指定,它的值将要被设置为替换发生的次数。
返回值:返回替换后的数组或者字符串
实例:
① $bodytag = str_replace("%body%","black","<body text='%body%'>");
结果:<body text='black'>
② $vowels = array("a","e","i","o","u","A","E","I","O","U");
$onlyconsonants = str_replace($vowels,"","Hello world of PHP");
结果:Hll wrld f PHP
③ $phrase = "You should eat fruits, vegetables,and fiber every day.";
$healthy = array("fruits","vegetables","fiber");
$yummy = array("pizza","beer","ice cream");
$newphrase = str_replace($healthy,$yummy,$phrase);
结果:You should eat pizza,beer,and ice cream every day.
④ $str = str_replace("ll","","good golly miss molly!",$count);
echo $count;
结果:2
⑤ $str = "Line 1\nLine 2\rLine 3\r\nLine 4\n";
$order = array("\r\n","\n","\r")
$replace = "<br />";
在字符串中首先替换\r\n字符,因此不会被两次
$newstr = str_replace($order,$replace,$str);
⑥ $search = array('A','B','C','D','E');
$replace = array('B','C','D','E','F');
$subject = 'A';
echo str_replace($search,$replace,$subject);
结果:F
在A中搜索A被B替换,在B中搜索B被C替换,依次类推。。。
⑦ $letters = array('a','p');
$fruit = array('apple','pear')
$text = 'a p';
$output = str_replace($letters,$fruit,$text);
echo $output;
结果:apearpear pear
(2) str_repeat- 重复一个字符串
语法格式:string str_repeat(string $input,int $multiplier)
作用:返回$input重复$multiplier次的结果
实例:echo str_repeat("=", 10);
(3) str_pad- 使用另一个字符串填充字符串为指定长度
语法格式:string str_pad(string $input,int $pad_len [,string $pad_string="" [,int $pad_type = STR_PAD_RIGHT]])
作用:该函数返回input被从左端、右端或同事两端被填充到制定长度后的结果。如果可选的pad_string参数没有被指定,input将被空格字符填充,否则它将被pad_string填充到指定长度
参数:input-输入字符串
pad_length-如果pad_length的值是负数,小于或者等于输入字符串的长度,都不会发生填充。
pad_string-如果填充字符串长度不能被pad_string整除,那么pad_string可能会被缩短。
pad_type-可选参数值为: STR_PAD_RIGHT
,STR_PAD_LEFT
或 STR_PAD_BOTH
。如果没有指定 pad_type
,则假定它是 STR_PAD_RIGHT
。
实例:$input = "Alien";
echo str_pad($input,10); //输出 “Alien ”
echo str_pad($input,10,"_",STR_PAD_BOTH); //输出“__Alien___”
(4) str_shuffle- 随机打乱一个字符串
语法格式:string str_shuffle(string $str)
作用:打乱一个字符串
参数:str-输入字符串
实例:$str = "abcdef";
$shuffle = str_shuffle($str);
echo $shuffle;
(5) str_split- 将字符串转换为数组
语法格式:array str_split(string $string [,int $split_len = 1])
作用:将一个字符串转换为数组
参数:string-输入字符串
split_len -每一段的长度
实例:$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str,3);
print_r($arr1);
print_r($arr2);
(5) str_word_count- 返回字符串中单词的使用情况
语法格式:array str_word_count(string $string [,int $formate = 0,[, string $charlist]])
作用:返回字符串中单词的使用情况
参数 string-输入字符串
formate-指定函数的返回值 0-返回的单词的数量 1 -返回一个包含string中全部单词的数组
2-返回关联数组。数组的键是单词在string中出现的数值位置,数组的值是这个单词
实例 $str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str,3);