我一直在试图找到一种方法来使用laravel 5.1中的php domdocument,但每次都失败了。我想我不明白它是怎么工作的。
我需要从YouTube页面或任何其他页面获取标题和/或视频ID。
我试着把这个包括进去
还有其他事情。
但我总是得到服务器500错误,不知道为什么。
目前我有
$dom = new \DOMDocument();
$dom->loadHTML('https://www.youtube.com/watch?v=QQ7XJG0Z2ho');
$a = $dom->getElementsByTagName('title');
在我看来我只是
@if(isset($a))
{{var_dump($a)}}
@endif
它返回
object(DOMNodeList)#171 (1) { ["length"]=> int(0) }
但这不是标题。甚至不知道这意味着什么。
谁能告诉我我做错了什么,也许有更好的方法去做?
最佳答案
$content = file_get_contents('https://www.youtube.com/watch?v=QQ7XJG0Z2ho');
$dom = new \DOMDocument();
$dom->loadHTML($content);
$a = $dom->getElementsByTagName('title');
使用
loadHTMLFile()
$dom = new \DOMDocument();
$dom->loadHTMLFile('https://www.youtube.com/watch?v=QQ7XJG0Z2ho');
$a = $dom->getElementsByTagName('title');
在
load()
或loadHTMLfile()
方法中使用url打开需要在ini文件中启用allow_url_fopen
指令。