Heim  >  Artikel  >  Backend-Entwicklung  >  PHP函数preg_match_all()的相关使用方法介绍_PHP教程

PHP函数preg_match_all()的相关使用方法介绍_PHP教程

WBOY
WBOYOriginal
2016-07-15 13:30:55988Durchsuche

在下面是一个将文本中的URL链接地址转换为HTML代码的示例。代码6.4是PHP函数preg_match_all()的使用范例。

代码6.4 将文本中的链接地址转成HTML

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li><span>//功能:将文本中的链接地址转成HTML  </span></li>
<li class="alt"><span>//输入:字符串  </span></li>
<li><span>//输出:字符串  </span></li>
<li class="alt"><span>function url2html($text)  </span></li>
<li><span>{  </span></li>
<li class="alt"><span>//匹配一个URL,直到出现空白为止  </span></li>
<li><span>preg_match_all("/http://?[^s]+/i"<br>, $text, $links);  </span></li>
<li class="alt"><span>//设置页面显示URL地址的长度  </span></li>
<li>
<span>$</span><span class="attribute">max_size</span><span> = </span><span class="attribute-value">40</span><span>;  </span>
</li>
<li class="alt"><span>foreach($links[0] as $link_url)  </span></li>
<li><span>{  </span></li>
<li class="alt"><span>//计算URL的长度。如果超过$max_size的设置,则缩短。  </span></li>
<li>
<span>$</span><span class="attribute">len</span><span> = </span><span class="attribute-value">strlen</span><span>($link_url);  </span>
</li>
<li class="alt">
<span>if($len </span><span class="tag">></span><span> $max_size)   </span>
</li>
<li><span>{  </span></li>
<li class="alt">
<span>$</span><span class="attribute">link_text</span><span> = </span><span class="attribute-value">substr</span><span>($link_url, 0, $max_size)."...";  </span>
</li>
<li><span>} else {  </span></li>
<li class="alt">
<span>$</span><span class="attribute">link_text</span><span> = $link_url;  </span>
</li>
<li><span>}  </span></li>
<li class="alt"><span>//生成HTML文字  </span></li>
<li>
<span>$</span><span class="attribute">text</span><span> = </span><span class="attribute-value">str_replace</span><span>($link_url,"<br></span><span class="tag"><span> </span><span class="tag-name">a</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">'$link_url'</span><span class="tag">></span><span>$link_text</span><span class="tag"></span><span class="tag-name">a</span><span class="tag">></span><span>",$text);  </span></span>
</li>
<li class="alt"><span>}  </span></li>
<li><span>return $text;  </span></li>
<li class="alt"><span>}  </span></li>
<li><span>//运行实例  </span></li>
<li class="alt">
<span>$</span><span class="attribute">str</span><span> = “这是一个包含多个URL链接地址的多行文字。<br>欢迎访问http://www.taoboor.com”;  </span>
</li>
<li><span>print url2html($str);  </span></li>
<li class="alt"><span>/*输出结果  </span></li>
<li>
<span>这是一个包含多个URL链接地址的多行文字<br>。欢迎访问</span><span class="tag"><span> </span><span class="tag-name">a</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">'http://www.taoboor.com'</span><span class="tag">></span><span> </span></span>
</li>
<li class="alt">
<span>http://www.taoboor.com</span><span class="tag"></span><span class="tag-name">a</span><span class="tag">></span><span> </span>
</li>
<li><span>*/  </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>

希望大家通过以上PHP函数preg_match_all()的使用示例,能够充分掌握这一函数的应用。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446251.htmlTechArticle在 下面是一个将文本中的URL链接地址转换为HTML代码的示例。代码6.4是PHP函数preg_match_all()的使用范例。 代码6.4 将文本中的链接地址转成H...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn