在PHP语言中有这样一个代码,与preg_match()函数的功能类似,叫做PHP函数preg_match_all()。如果使用了第三个参数,将把所有可能的匹配结果放入。本函数返回整个模式匹配的次数(可能为0),如果出错返回False。
#t#下面是一个将文本中的URL链接地址转换为HTML代码的示例。代码6.4是PHP函数preg_match_all()的使用范例。
代码6.4 将文本中的链接地址转成HTML
< ?php
//功能:将文本中的链接地址转成HTML
//输入:字符串
//输出:字符串
function url2html($text)
{
//匹配一个URL,直到出现空白为止
preg_match_all("/http:\/\/?[^\s]+/i"
, $text, $links);
//设置页面显示URL地址的长度
$max_size = 40;
foreach($links[0] as $link_url)
{
//计算URL的长度。如果超过$max_size的设置,则缩短。
$len = strlen($link_url);
if($len > $max_size)
{
$link_text = substr($link_url, 0, $max_size)."...";
} else {
$link_text = $link_url;
}
//生成HTML文字
$text = str_replace($link_url,"
< a href='$link_url'>$link_texta>",$text);
}
return $text;
}
//运行实例
$str = “这是一个包含多个URL链接地址的多行文字。
欢迎访问http://www.taoboor.com”;
print url2html($str);
/*输出结果
这是一个包含多个URL链接地址的多行文字
。欢迎访问< a href='http://www.taoboor.com'>
http://www.taoboor.coma>
*/
?>
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
希望大家通过以上PHP函数preg_match_all()的使用示例,能够充分掌握这一函数的应用。