php string常用函数

<?php

 $a[]='a';
 $a[]='b';
 $a[]='C';
  
 echo "</br>";
 
 
/* implode — 将一个一维数组的值转化为字符串

说明

string implode ( string $glue , array $pieces )

string implode ( array $pieces )

用 glue 将一维数组的值连接为一个字符串。 
 
参数

glue
默认为空的字符串。 
pieces
你想要转换的数组。 

返回值

返回一个字符串,其内容为由 glue 分割开的数组的值。 

范例
  */

$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);

echo $comma_separated; // lastname,email,phone

// Empty string when using an empty array:
var_dump(implode('hello', array())); // string(0) ""

 
 
 $str='';
 foreach($a as $k=>$v){
     
     $str.='.'.$v;    //结果为 .a.b.C
 }
  
 
 
/* trim — 去除字符串首尾处的空白字符(或者其他字符)


说明

string trim ( string $str [, string $charlist = " \t\n\r\0\x0B" ] )

此函数返回字符串 str 去除首尾空白字符后的结果。如果不指定第二个参数,trim() 将去除这些字符: 
• " " (ASCII 32 (0x20)),普通空格符。  
• "\t" (ASCII 9 (0x09)),制表符。  
• "\n" (ASCII 10 (0x0A)),换行符。  
• "\r" (ASCII 13 (0x0D)),回车符。  
• "\0" (ASCII 0 (0x00)),空字节符。  
• "\x0B" (ASCII 11 (0x0B)),垂直制表符。  



参数


str
待处理的字符串。 
charlist
可选参数,过滤字符也可由 charlist 参数指定。一般要列出所有希望过滤的字符,也可以使用 ".." 列出一个字符范围。 



返回值

过滤后的字符串
 */
 
 $str=trim($str,'.');   //去除两边的空格或者指定字符串,去除两边的'.'如果有就去除,没有就不变,输出结果为 a.b.C
 
 
 $str=str_replace('.','-',$str);//搜索指定字符串中的'.'号,用空格替换; 输出结果为 a-b-C
 //mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )
 echo $str;
 
 $c = explode('-',$str); //用空格把制定字符串分割成数组元素;返回数组输出结果为array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "C" } 
 
 var_dump($c);
 
 echo '<hr>';
 
/* 
替换字符串函数
mixed substr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] )
 参数


string
输入字符串。 

replacement
替换字符串。 

start
如果 start 为正数,替换将从 string 的 start 位置开始。 

如果 start 为负数,替换将从 string 的倒数第 start 个位置开始。 
length
如果设定了这个参数并且为正数,表示 string 中被替换的子字符串的长度。如果设定为负数,它表示待替换的子字符串结尾处距离 string 末端的字符个数。如果没有提供此参数,那么它默认为 strlen( string ) (字符串的长度)。当然,如果 length 为 0,那么这个函数的功能为将 replacement 插入到 string 的 start 位置处。  
*/

 
 $str=substr_replace($str,'d-',0,0);//如果mixed $length参数为0,会将relpacement插入到 string 的 start 位置处,输出结果为 d-a-b-C
 
 $str=substr_replace($str,'e-',0,'');//如果mixed $length参数为'',和设置参数为0结果一样,输出结果为 e-d-a-b-C
 
 $str=substr_replace($str,'f-',0,3);
 //如果mixed $length参数为3,表示string中将要被替换的字符串长度,表示字符串下标从0开始向后数3位将会被'f-'代替,输出结果为 f--a-b-c
 
 $str=substr_replace($str,'g-',0,-3);
 //如果mixed $length参数为-3,表示字符串string末位下标(包括末位下标)向前数3位对应下标的字符串(假设为对应的字符串为x,末位下标对应的字符串到字符串x之间的字符串)将会被保留,start下标对应的字符串到字符串x之间的字符串则被'g-'替换,输出结果为 g-b-c
 
 $str=substr_replace($str,'h-',0,-10);
//如果mixed $length参数为-3,表示字符串string下标末位向前数10位字符串将会被保留其他则被'g-'替换,所有字符串都将会保留输出结果为 h-g-b-c

 $str=substr_replace($str,'i',0);//如果mixed $length不设参数,输出结果为 i
 
 


/* 
string substr ( string $string , int $start [, int $length ] )

返回字符串 string 由 start 和 length 参数指定的子字符串。 


参数


string
输入字符串。必须至少有一个字符。 
start
如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 "abcdef" 中,在位置 0 的字符是 "a",位置 2 的字符串是 "c" 等等。 

如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始;
如果length为负数,返回从字符串下标从start开始(包括start)(假如开始下标对应的字符串为a),到从字符串末位下标向前数length位对应字符串(假如向前数length位对应字符串为b),返回字符串为a(包括a)与b(不包括b)之间的数

如果 string 的长度小于 start,将返回 FALSE。  */

 $str1=123456;
 
 //$str1=substr($str1,0,3); //返回从字符串下标从0开始(包括0),向后数3位长度的字符串,输出结果为123
 //$str1=substr($str1,-3,-1); //输出结果为45 
  $str2=substr($str1,0,-2); //去掉最后两位,返回结果为1234
 $str3=substr($str1,2,-2); //返回从字符串下标从2开始(从3开始),到从字符串末位下标向前数2位对应字符串(对应字符串5,不包括5)之间的数,输出结果为34
 echo $str2."</br>";
 echo $str3."</br>";
 
 
 
 
?>

 

posted @ 2017-12-18 18:16  看天空  阅读(1882)  评论(0编辑  收藏  举报