我正在阅读这个问题,因此我可以成功地测试表单的标题:
header('X-Something: value');
header('Content-Type: text/html');
但是,我有设置响应代码的代码,我想验证这在我的单元测试中是否也能正常工作,但它们不会在xdebug_get_headers
返回值中返回。电话看起来像:
header('HTTP/1.1 201 Created');
header('HTTP/1.1 422 Unprocessable Entity');
是否也要检查此标头?或者我只需要依靠其余的返回值来证明我的控制器正在
您可以使用http_response_code()
函数返回您设置的值:
print_r("Response Code: " . http_response_code());
结果:
Response Code: 422
文档:http_response_code()-PHP 5.4.0+
如果我正确理解了所有内容,那么您正在寻找headers_list()
,它返回已发送(或准备发送)的响应标头列表,请参阅文档。执行以下操作:
header("X-Sample-Test: foo");
header('Content-type: text/plain');
var_dump(headers_list());
将输出以下内容:
array(3) {
[0]=>
string(23) "X-Powered-By: PHP/5.1.3"
[1]=>
string(18) "X-Sample-Test: foo"
[2]=>
string(24) "Content-type: text/plain"
}