我有一个来自设备的文件(图片),通过put
发送PUT /r.php HTTP/1.1
User-Agent: PHS/2.0.6
Host: localhost
Accept: */*
Content-Name: cam20141020084031.jpg,10001019
Content-Length: 35183
Expect: 100-continue
这就是我获取发送图片的方式:
$res = file_get_contents("php://input");
$file = fopen('1.jpg', "w");
fputs($file, $res);
fclose($file);
我也需要单独获取内容名称。我无法在任何地方找到我怎么能得到它。有人可以帮忙吗?
更新
$res = file_get_contents("php://input");
$vars=parse_str($res,$post_vars);
$headers = getallheaders();
$contentName=$headers['Content-Name'])
$file = fopen('1.jpg', "w");
$fileVar= fopen('1.txt', "w");
fputs($file, $res);
fputs($fileVar,$res);
fclose($fileVar);
fclose($file);
很奇怪,但这段代码似乎永远在加载。
更新1 当我print_r它时,我理解它不是put的标题请求它的页面标题。不是我需要的。
答案 0 :(得分:1)
您可以尝试使用getallheaders()
功能,该功能仅用于检索请求标头:
$headers = getallheaders();
var_dump($headers['Content-Name']);
请注意,最好预先处理密钥以处理Content-name
之类的标题(请注意-
附近字母大小写的更改)。