无法读取DOMDocument中的元重定向URL - php

我正在尝试阅读网站的元重定向。数据在curl请求中(我已经建立了一个存根进行测试)。

什么是“读取URL”不起作用-任何PHP DOMDocument专家都可以告诉我为什么此代码不起作用?我正在尝试从meta refresh标签中获取URL。

    $r['body'] = '<HTML><HEAD><TITLE>Meta Refresh Example</TITLE>'.
                 '<meta http-equiv=refresh content="12; URL=meta2.htm">'.
                 '<link rel="stylesheet" href="../bwsrstyle.css" type="text/css">'.
                 '<LINK REL="SHORTCUT ICON" href="/myicon.ico">'.
                 '<meta http-equiv="Content-Type" content="text/html; charset=></HEAD>'.
                 '<BODY BGCOLOR="#FFFFFF" TEXT="#000000">foo</BODY></HTML>';

$dom = new DOMDocument();
@$dom->loadHTML($r['body']);
$xpath = new DOMXpath($dom);
$meta_redirect = $xpath->query("//meta[@http-equiv='refresh']");

foreach ($meta_redirect as $node) { 
    echo         "\nNODE: {$node->getAttribute('http-equiv')} ".
                 "\nURL: {$node->getAttribute('url')}\n";   
}

“刷新”正确拉出,但URL不正确。

参考方案

没有属性url=。您需要查询content=属性。

 print  "\nURL: {$node->getAttribute('content')}\n"; 

而且,您还必须手动拆分此结果字符串。它仍然包含2; url=前缀。这不是DOM函数正常处理的事情。

PHP-复选框组 - php

我有一个需要发布的表单复选框组。<input type="checkbox" value="true" checked name="chk0[]"> <input type="checkbox" value="false" name=…

PHP:对数组排序 - php

请如何排序以下数组Array ( 'ben' => 1.0, 'ken' => 2.0, 'sam' => 1.5 ) 至Array ( 'ken' => 2.0, 'sam' => 1.5, 'ben' =&…

转义字符无法正常工作 - php

我试图在PHP中创建html内容,并且为onclick事件提供了一个名为uchat的div函数。该函数采用一个字符串的名称参数。如下所示:$name = "Php string"; $echostr .= "<div onClick='uchat(\'$name\')'> &l…

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…

PHP-全局变量的性能和内存问题 - php

假设情况:我在php中运行一个复杂的站点,并且我使用了很多全局变量。我可以将变量存储在现有的全局范围内,例如$_REQUEST['userInfo'],$_REQUEST['foo']和$_REQUEST['bar']等,然后将许多不同的内容放入请求范围内(这将是适当的用法,因为这些数据指的是要求自…