php正则获取关键字、标题、网页描述代码
本文章来给大家介绍关于php正则获取关键字、标题、网页描述代码,有需要了解的同学可进入参考.
获取关键字,代码如下:
- function get_keywords($html)
- {
- $html=strtolower($html);
- preg_match("@<head[^>]*>(.*?)</head>@si",$html, $regs);
- $headdata = $regs[1];
- preg_match("/<meta +name *=["']?keywords["']? *content=["']?([^<>"]+)["']?/i", $headdata, $res);
- if (isset ($res)) {
- $keywords = $res[1];
- }
- if ($keywords == "") $keywords = "无";
- $keywords=replace_word(textcut($keywords,250));
- $keywords=str_replace("-",",",$keywords);
- $keywords=str_replace(",",",",$keywords);
- $keywords=str_replace(" ",",",$keywords);
- $keywords=str_replace("|",",",$keywords);
- $keywords=str_replace("、",",",$keywords);
- $keywords=str_replace(",,",",",$keywords);
- $keywords=str_replace("<","",$keywords);
- $keywords=str_replace(">","",$keywords);
- return addslashes(trim($keywords));
- }
获取标题,代码如下:
- function get_title($html)
- {
- $html=strtolower($html);
- $title = str_replace(" - ",",",cut($html,"<title>", "</title>" ));
- //if ($title == "") $title = "无标题";
- if ($title) $title=replace_word(textcut($title,80));
- if ($title) $title=preg_replace("/<(.*?)>/","",$title);
- return addslashes(trim($title));
- }
获取网页描述description,代码如下:
- function get_description($html)
- {
- $html=strtolower($html);
- preg_match("@<head[^>]*>(.*?)</head>@si",$html, $regs);
- $headdata = $regs[1];
- preg_match("/<meta +name *=["']?description["']? *content=["']?([^<>"]+)["']?/i", $headdata, $res);
- if (isset ($res)) {
- $description = $res[1];
- }
- if ($description == "") $description = "无";
- $description=replace_word(textcut($description,250));
- $description=str_replace("-",",",$description);
- $description=str_replace(",",",",$description);
- $description=str_replace(" ",",",$description);
- $description=str_replace("|",",",$description);
- $description=str_replace("、",",",$description);
- $description=str_replace(",,",",",$description);
- $description=str_replace("<","",$description);
- $description=str_replace(">","",$description);
- return addslashes(trim($description));
- }