当前位置:Gxlcms > PHP教程 > PHP截取字符串函数strtr/str_replace

PHP截取字符串函数strtr/str_replace

时间:2021-07-01 10:21:17 帮助过:18人阅读

/**

* 1. strtr 转换指定字符

*

* string strtr ( string $str , string $from , string $to )

* string strtr ( string $str , array $replace_pairs )

*

* 该函数返回 str 的一个副本,并将在 from 中指定的字符转换为 to 中相应的字符。

* 如果 from 与 to 长度不相等,那么多余的字符部分将被忽略。

*/


$str = 'http://flyer0126.iteye.com/';


echo strtr($str, 'IT', 'java');

//output: http://flyer0126.iteye.com/ strtr大小写敏感


//如果 from 与 to 长度不相等,那么多余的字符部分将被忽略

echo strtr($str, 'it', 'java');

//output: haap://flyer0126.jaeye.com/

//iteye --> jaeye it只替换成了ja

//http --> haap 逐字符进行对应位置的替换,这样不符合我们的初衷


echo strtr($str, 'it', '');

//output: http://flyer0126.iteye.com/ 没有替换


echo strtr($str, 'it', ' ');

//output: http://flyer0126. teye.com/ 可以替换


/**

* 函数 strtr 的 from->to方式 总结一下:

* 1. 区分大小写;

* 2. form与to长度不等时,多余字符将被忽略,不可以少换多,也不可以多换少;

* 3. 逐字符进行对应位置替换;

* 4. 不可被替换为空,可以替换为空格。

*/


// 相比较而言,后一种方式显而更合适

$replace_pairs = array(

'http://'=>'',

'it' => 'java'

);

echo strtr($str, $replace_pairs);

//output: flyer0126.javaeye.com/ 替换成功,符合替换初衷


/**

* 2. 函数 str_replace

* mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

*/


echo str_replace('it', 'java', $str);

//output: http://flyer0126.javaeye.com/

echo str_replace(array('http', ':', '//', '/'), '', $str);

//output: flyer0126.iteye.com

echo str_replace(array('http', 'it', '/'), array('https', 'java', ''), $str);

//output: https:flyer0126.javaeye.com

人气教程排行