如果我通过表单上传一个文本文件,能否直接从 $_FILES 变量输出其内容,而无需先将其保存到服务器上?我知道这是一种安全风险,但它只会在本地机器上运行。
做
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']);
}
$_FILES['uploadedfile']['tmp_name']
来读取它,而不必将其保存在永久位置。