如何从输入类型打印选定的照片名称
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从输入类型打印选定的照片名称相关的知识,希望对你有一定的参考价值。
任何人都可以告诉我,我如何打印照片名称?照片将从输入type=file
中选择。
这是我到目前为止所尝试的:
$photo = $_FILES['photo']['tmp_name'];
//$photo_name = basename($photo);
echo $photo;
此代码不显示实际文件名。它打印像这样(php3515.tmp
);
答案
打印文件name
而不是tmpname
试试这个:
echo $_FILES['photo']['name'];
另一答案
你的案例中的php3515.tmp
是PHP生成的临时文件。您必须使用move_uploaded_file()
函数将此文件移动到所需位置,该函数将$_FILES['photo']['tmp_name']
作为第一个参数,将path和new filename作为第二个参数。
以下是来自PHP manual的示例:
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.
";
} else {
echo "Possible file upload attack!
";
}
echo 'Here is some more debugging info:';
print_r($_FILES);
print "</pre>";
请注意此示例中的$_FILES['userfile']['name']
,其中包含原始文件名。
另一答案
你需要知道,you have 5 parameters中的$_FILES['userfile']
:
- name - 上传文件的原始名称
- tmp_name - 系统在磁盘上物理写入的系统名称
- 大小 - 文件大小
- 错误 - 错误代码 - 0表示没问题
- type - 已保存文件的类型
如果您想要原始名称,要显示,只需使用:
$_FILES['userfile']['name']
您还具有move_uploaded_file()
功能,可以将文件从临时位置安全地移动到您自己的位置。另一种方式,在PHP过程结束后,您上传的文件将被删除。
$path = __DIR__ . '/upload/' . basename($_FILES['userfile']['name']);
$result = move_uploaded_file($_FILES['userfile']['tmp_name'], $path);
$result
告诉你,系统是否正确保存在给定位置的文件。
以上是关于如何从输入类型打印选定的照片名称的主要内容,如果未能解决你的问题,请参考以下文章
如何从 UISegmentedControl 的选定段呈现 UIPopover