HTTP请求与file_get_contents,获取响应代码
我试图使用file_get_contents
与stream_context_create
一起发出POST请求。 我的代码到目前为止:
$options = array('http' => array( 'method' => 'POST', 'content' => $data, 'header' => "Content-Type: text/plain\r\n" . "Content-Length: " . strlen($data) . "\r\n" )); $context = stream_context_create($options); $response = file_get_contents($url, false, $context);
它工作正常,但是,当一个HTTP错误发生时,它吐出一个警告:
file_get_contents(...): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request
并返回false。 有没有办法:
- 压制一个警告(我打算抛出我自己的例外,如果失败)
- 从stream中获取错误信息(至less是响应码)
我知道如何做到这一点,我的问题是具体关于stream/文件function。
对不起,如果这是rtm,stream的东西是我的新。
http://php.net/manual/en/reserved.variables.httpresponseheader.php
file_get_contents("http://example.com"); var_dump($http_response_header);