PHP从上传的文本文件中读取?

新手上路,请多包涵

如果我通过表单上传文本文件,是否可以直接从 $_FILES 变量输出其内容,而不是先将其保存到服务器上?我知道这是一个安全风险,但它只会在本地机器上运行。

原文由 Dan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 633
2 个回答

该文件在上传的那一刻被保存到临时目录,但您可以使用 $_FILES['uploadedfile']['tmp_name'] 来读取它,而无需保存在永久位置。

原文由 Marek Karbarz 发布,翻译遵循 CC BY-SA 2.5 许可协议

正在做

file_get_contents($_FILES['uploadedfile']['tmp_name']);

是有效的,但是您还应该检查以确保文件是通过表单上传的,并且在上传过程中没有发生错误:

 if ($_FILES['uploadedfile']['error'] == UPLOAD_ERR_OK               //checks for errors
      && is_uploaded_file($_FILES['uploadedfile']['tmp_name'])) { //checks that file is uploaded
  echo file_get_contents($_FILES['uploadedfile']['tmp_name']);
}

一个有用的链接是 http://us2.php.net/manual/en/features.file-upload.php

原文由 MANCHUCK 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题