从php://输入获取标题信息

时间:2014-10-20 09:44:07

标签: php

我有一个来自设备的文件(图片),通过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的标题请求它的页面标题。不是我需要的。

1 个答案:

答案 0 :(得分:1)

您可以尝试使用getallheaders()功能,该功能仅用于检索请求标头:

$headers = getallheaders();
var_dump($headers['Content-Name']);

请注意,最好预先处理密钥以处理Content-name之类的标题(请注意-附近字母大小写的更改)。