我需要解析一些HTML文件,但是,它们格式不正确并且PHP打印出警告.我想以编程方式避免这种调试/警告行为.请指教.谢谢!
码:
// create a DOM document and load the HTML data
$xmlDoc = new DomDocument;
// this dumps out the warnings
$xmlDoc->loadHTML($fetchResult);
Run Code Online (Sandbox Code Playgroud)
这个:
@$xmlDoc->loadHTML($fetchResult)
Run Code Online (Sandbox Code Playgroud)
可以抑制警告,但我如何以编程方式捕获这些警告?
我正在做一个书签系统,并寻找用PHP检索页面标题的最快(最简单)方法.
有类似的东西会很高兴 $title = page_title($url)
使用PHPDOMDocument-> loadHTML加载html时,使用LIBXML_NOWARNING选项标志不会停止.其他常量确实有效.
在下面的示例中,我添加了LIBXML_HTML_NODEFDTD以证明已接收到常量(停止添加doctype).
$doc=new DOMDocument();
$doc->loadHTML("<tagthatdoesnotexist><h1>Hi</h1></tagthatdoesnotexist>",LIBXML_NOERROR | LIBXML_NOWARNING | LIBXML_HTML_NODEFDTD);
echo $doc->saveHTML();
Run Code Online (Sandbox Code Playgroud)
但是,仍会生成警告并输出.我错过了什么?
我正在阅读PHP中的页面源代码.<input type="hidden" name="session_id" value=该页面中有一个隐藏的输入字段.
$url = 'URL HERE';
$needle = '<input type="hidden" name="session_id" value=';
$contents = file_get_contents($url);
if(strpos($contents, $needle)!== false) {
echo 'found';
} else {
echo 'not found';
}
Run Code Online (Sandbox Code Playgroud)
我想读一下隐藏的字段值.