php 字符替换函数 substr_replace 与 str_replace 用法

字符替换我们常用用str_replace函数,而替换一部份字符我们会使用substr_replace函数了,下面我来简单的列举一下这两个例子的使用方法吧.

PHP字符串中替换指定字符串有两个函数

substr_replace():把字符串的一部分替换为另一个字符串

str_replace():使用一个字符串替换字符串中的另一些字符

substr_replace():substr_replace() 函数用于把字符串的一部分替换为另一个字符串,返回混合类型.代码如下:

  1. <?php
  2. echo substr_replace('abcdef', '###', 1); //输出 a###
  3. echo substr_replace('abcdef', '###', 1, 2); //输出 a###def
  4. echo substr_replace('abcdef', '###', -3, 2); //输出 abc###ef
  5. echo substr_replace('abcdef', '###', 1, -2); //输出 a###ef
  6. ?>

str_replace():str_replace() 函数使用一个字符串替换字符串中的另一些字符,返回混合类型,代码如下:

  1. <?php
  2. echo str_replace("world","earth","Hello world!"); //输出 Hello earth!
  3. //替换多个,且第二个参数为空字符
  4. echo str_replace("o","","Hello world!"); //输出 Hell wrld!
  5. //使用数组
  6. $arr = array("e", "o");
  7. $arr2 = array("x", "y");
  8. echo str_replace($arr, $arr2, "Hello World of PHP", $i); //输出 Hxlly Wyrld yf PHP //开源软件:phpfensi.com
  9. echo $i; //输出4
  10. ?>

补充:第一种方法,代码如下:

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. $pattern = preg_quote('天仙');//特殊字符自动添加转义符\
  4. $str = '宋夫人真是美若天仙';
  5. echo preg_replace("/($pattern)/","<font color='blue'>$1</font>",$str);
  6. ?>

1. preg_replace(),代码如下:

  1. $msg = preg_replace("/<style>.+<\/style>/is", "", $msg); -----删除<style></style>和中间的部分
  2. $msg = preg_replace("/<[^>]+>/", "", $msg); -----是删除<>和中间的内容

2.ereg()与eregi()

注:preg_match() 函数通常是比 ereg() 更快的替代方案,代码如下:

eregi("<body([^>]+)>(.+)</body>",$data,$b)----察看$data中是否有body标签,如果有,把参数赋值$b[0],中间部分赋值$b[1].

注意:在php5.3及以后版本不支持ereg()与eregi() 函数了哦,所以大家最好使用preg_replace函数来替换了.