Home  >  Article  >  Backend Development  >  php中str_replace函数的多种用法总结

php中str_replace函数的多种用法总结

WBOY
WBOYOriginal
2016-06-23 13:24:47962browse

函数原型:mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

这个函数的三个参数类型都是mixed,所以它们都既可以是字符串,也可以是数组,因此就有以下几种用法:

1、 $search和$replace都是字符串,这是最常见的用法

echo str_replace("a", "apple", "This is a demo.");

输出:This is apple demo.


2、$search为数组,对$search中的数组元素逐个替换成$replace,最终输出为字符串。

echo str_replace(array("a", "p","o"), "apple", "This is a demo.");

输出:This is aappleapplele demapple.


3、$replace为数组,会报错且不会输出预想的结果,不建议使用

echo str_replace("a",  array("apple", "pear"), "This is a demo.");

输出:This is Array demo.并报错 Notice: Array to string conversion


4、$subject为数组,$subject中的每个数组元素都会做一次独立替换,最终输出为数组。

print_r(str_replace("a", "apple", array("This is a demo.", "This is not a demo.")));

输出:Array ( [0] => This is apple demo. [1] => This is not apple demo. )


5、$search和$replace都为数组,这时又可以分为三种情况:

    a).$search和$replace一样长,则相同下标对应替换

    b).$search比$replace长,则$search中比$replace多出的数组元素都被替换成空字符串

    c).$search比$replace短,则$replace中多出的数组元素被忽略

echo str_replace(array("a", "o"), array("apple", "pear"), "This is a demo.");

输出:This is apple dempear.


6、$search、$replace和$subject都为数组,这是以上多种情况的综合

print_r(str_replace(array("a", "o"), array("apple", "pear"), array("This is a demo.", "This is not a demo.")));

输出:Array ( [0] => This is apple dempear. [1] => This is npeart apple dempear. )

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn