PHP HTTP_X_FILE_NAME 已删除,我有什么选择

PHP HTTP_X_FILE_NAME removed, what alternatives do I have

美好的一天,

我使用 filedrop 在我的应用程序中上传图像。 最近我在我的开发位置移动到 PHP 7.1,我发现 HTTP_X_FILE_NAME 已被删除。

在网上搜索我发现此密钥已被删除 "unnecessary"

但是我不知道用什么代替它?

我曾经使用以下代码获取上传的文件:

$name = urldecode($_SERVER['HTTP_X_FILE_NAME']);
$data = file_get_contents("php://input");

$_SERVER['HTTP_X_FILE_NAME'] 在 PHP 的任何版本中都不是标准的东西,但在设置 'X-file-name' 请求 header 时可用。例如,您可以在此处看到 filedrop.js 设置此请求 header:https://github.com/ProgerXP/FileDrop/blob/33f85ce84a1df890ab5d9dcf6d105c457b2f18b0/filedrop.js#L2033.

请查看 $_SERVER super-global 中可用的 header(例如,通过执行 var_dump($_SERVER))。由于您当前的服务器配置,'HTTP_X_FILE_NAME' 可能会以 REDIRECT_ 为前缀,然后您应该使用 $_SERVER['REDIRECT_HTTP_X_FILE_NAME'].