我正在尝试上传.dat文件,我想获取文件中的内容并将其放在json中。
我有这个代码: HTML:
<from action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="fileUpload">
<button type="submit" name"btnSubmit">Upload</button>
</form>
PHP:
If(isset($_POST["btnSubmit"])) {
$file = file_get_contents($_FILES["fileUpload"]["name"], true);
$r = json_encode($file);
}
我得到的错误是file_get_contents("fileName.dat"): failed to open stream
我没有尝试将文件上传到我的服务器或文件夹,我试图获取其中的数据并将其存储到json中。
答案 0 :(得分:0)
文件上传会将文件保存在php定义的临时目录中。从那里,您可以将文件移动到所需位置,或从中获取内容。在您的情况下,您可以使用“tmp_name”而不是“name”来获取内容。
未来更多,您必须确保在表单中设置了enctype。
<?php
// check if file is given
if(!empty($_FILES)) {
// get file from temporary upload dir
$file = file_get_contents($_FILES["fileUpload"]["tmp_name"], true);
$r = json_encode($file);
// show restult
var_dump($r);
}
?>
<!-- add multipart -->
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="fileUpload">
<button type="submit" name"btnSubmit">Upload</button>
</form>