我正在这样解析一个put查询:
$raw = file_get_contents('php://input');
$params = array();
parse_str($raw, $params);
我想在
php://input
中注入一些测试内容来测试它(对于一些非单元测试也是如此)。我试着用谷歌搜索了一下,但是“put”是一个简短的关键字,我没有得到任何相关的信息。
如果php 5.3已经有了相应的基础设施(在发行说明中找不到任何内容),我准备更改一些解析代码来帮助测试或删除它。
最佳答案
您不能写入php://input
流(通常只能读取一次)。与其硬编码流位置,不如允许在解析器中配置它?这样,您就可以在单元测试中使用一个具有不同位置的模拟对象(例如file或php://temp
stream)。