0

我正在尝试回应上传的税务文件的扩展名。文档可以是任何图像或 pdf。我计划稍后在代码中使用扩展名以适当的扩展名重命名文件。

目前它不回显扩展名。

我尝试了几种不同的方法,并查看了文档和论坛。我似乎仍然做错了什么。

我的 HTML:

<input type="file" class="" id="TaxFile" name="TaxFile" accept="image/*,application/pdf" ><br /><br />

我的PHP:

$taxpath = pathinfo($_FILES["TaxFile"]["tmp_name"]); echo $taxpath['extension'] . "\n123";

回声“123”

我的替代 PHP:

$taxpath = $_FILES["TaxFile"]["tmp_name"]; $ext = pathinfo($taxpath, PATHINFO_EXTENSION); echo $ext;

什么都没有

我希望看到回声:“pdf 123”和“pdf”

*我后来的代码确实使用move_uploaded_file($_FILES["TaxFile"]["tmp_name"], $target_file). 只是 $target_file 不会包含正确的扩展名。

4

3 回答 3

2

如果您使用name而不是,这应该对您有用tmp_name

$path_parts = pathinfo($_FILES["TaxFile"]['name']);
$extension = $path_parts['extension'];
echo $extension;
于 2019-07-11T17:15:38.810 回答
1

这将解决

$path = $_FILES['image']['name'];
$ext = pathinfo($path, PATHINFO_EXTENSION);

所以在你的文件中连接变量

echo $path.'.'.$ext;
于 2019-07-11T17:12:57.663 回答
1

tmp_name是磁盘上文件的临时名称/位置。

尝试使用$_FILES["TaxFile"]["name"]来获取原始文件名。

pathinfo()否则,您使用and 获取扩展名的方法PATHINFO_EXTENSION是正确的。

于 2019-07-11T17:16:12.130 回答