编辑:这是调用抓取功能的主要功能的一部分:
$video['type'] = $videoProvider;
$video['id'] = $videoIds;
$video['title'] = $this->grab_title_from_curl($data);
我有这个小函数来通过curl从html解析标题,它可以工作。
private function grab_title_from_curl ($pull){
preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull,$data) ;
return $data;
}
并告诉我这个:
Array
(
[type] => yahoo
[id] => 613478/2923165
[title] => Array
(
[0] => EXELENTE TIRO DE ARCO!!
)
)
我需要[title]直接获取数组中[0]的值。 喜欢:[title] =&gt; EXELENTE TIRO DE ARCO !!
第二次编辑:
由于某些原因,当我使用JoostK的代码时代码中断: pastie.org
抱歉我的英语不好!已解决:而不是preg_match(“/?)\”/“,$ pull,$ data); preg_match('/?)\“/',$ pull,$ data);
答案 0 :(得分:1)
根据您的编辑,这应该有效:
private function grab_title_from_curl ($pull){
$data = array();
preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull, &$data);
return $data[0];
}
答案 1 :(得分:0)
使用临时变量来保存匹配项:
private function grab_title_from_curl ($pull){
$matches = array();
preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull, $matches) ;
$data['title'] = $matches[0];
return $data;
}