我目前file_get_contents()
用于获取类似于身份验证 API 的页面内容。它适用于大多数人使用的默认系统(仅使用默认的 HTTP/1.1 200 状态代码),但有些人会针对不同的错误发送相关的 HTTP 状态代码。例如 401 PASSWORD_FAIL,在这种情况下,它会将 HTTP 状态设置为 401 并将“PASSWORD_FAIL”输出到页面,这是我想要获取的部分。但是 401 状态码会导致file_get_contents()
出错并且不执行任何操作。我可以用来获取页面内容并忽略 HTTP 状态代码的最简单的 PHP 函数是什么?
问问题
136 次
2 回答
3
$opts = array('http' =>
array(
'ignore_errors' => true,
)
);
$context = stream_context_create($opts);
$result = file_get_contents($url, false, $context);
请参阅有关http 包装器上下文选项的手册。
于 2010-08-13T22:28:47.977 回答
0
您可以使用功能 stribet。
function stribet($inputstr, $deliLeft, $deliRight) {
$posLeft = stripos($inputstr, $deliLeft) + strlen($deliLeft);
$posRight = stripos($inputstr, $deliRight, $posLeft);
return substr($inputstr, $posLeft, $posRight - $posLeft);
}
$res = file_get_contents("网页"); $test=@$this->stribet($res,' <html>
',' </html>
');
欲了解更多信息,请查看PHP.Net stripos
于 2014-01-22T16:54:06.177 回答