很多站长朋友们都不太清楚php上传文件移动,今天小编就来给大家整理php上传文件移动,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 求教下php上传文件的移动,为什么会报错呢 2、 php上传文件到文件夹 3、 php文件上传,提示移动文件失败 4、 PHP移动文件 求教下php上传文件的移动,为什么会报错呢很明显报了你的一个文件夹不存在的错误,看你的上传函数并没有对$name 做改动,无非就是加了一个 './' 所以我觉得问题可能出现在你的$name这个变量上,你把这个变量打印出来看一下,看看这个变量是一个单纯文件名还是包含了目录。
php上传文件到文件夹//这是给文件重命名
$one = explode(".",$_FILES["file"]["name"]);
$file_name = $_FILES["file"]["name"] = time().".".$one[1];
//这是上传,用到move_uploaded_file,移动到:./assets/up/这个文件夹
move_uploaded_file($_FILES["file"]["tmp_name"], "./assets/up/" . $file_name);
//这是往数据库存放的 文件名称
$information_img = "./assets/up/" . $file_name;
php文件上传,提示移动文件失败php文件上传,提示移动文件失败,基本是上传保存的目录不可写造成的,需要好好设置一下,下面是一个PHP文件上传的简单例子,仅作参考:
<form action="" enctype="multipart/form-data" method="post"
name="uploadfile">上传文件:<input type="file" name="upfile" /><br>
<input type="submit" value="上传" /></form>
<?php
//print_r($_FILES["upfile"]);
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];
//获取数组里面的值
$name=$upfile["name"];//上传文件的文件名
$type=$upfile["type"];//上传文件的类型
$size=$upfile["size"];//上传文件的大小
$tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径
//判断是否为图片
switch ($type){
case 'image/pjpeg':$okType=true;
break;
case 'image/jpeg':$okType=true;
break;
case 'image/gif':$okType=true;
break;
case 'image/png':$okType=true;
break;
}
if($okType){
/**
* 0:文件上传成功<br/>
* 1:超过了文件大小,在php.ini文件中设置<br/>
* 2:超过了文件的大小MAX_FILE_SIZE选项指定的值<br/>
* 3:文件只有部分被上传<br/>
* 4:没有文件被上传<br/>
* 5:上传文件大小为0
*/
$error=$upfile["error"];//上传后系统返回的值
echo "================<br/>";
echo "上传文件名称是:".$name."<br/>";
echo "上传文件类型是:".$type."<br/>";
echo "上传文件大小是:".$size."<br/>";
echo "上传后系统返回的值是:".$error."<br/>";
echo "上传文件的临时存放路径是:".$tmp_name."<br/>";
echo "开始移动上传文件<br/>";
//把上传的临时文件移动到up目录下面
move_uploaded_file($tmp_name,'up/'.$name);
$destination="up/".$name;
echo "================<br/>";
echo "上传信息:<br/>";
if($error==0){
echo "文件上传成功啦!";
echo "<br>图片预览:<br>";
echo "<img src="/data/upload/help/202303/02/be758db627897e566632767a4cda845e.">";
//echo " alt=\"图片预览:\r文件名:"/data/upload/help/202303/02/be758db627897e566632767a4cda845e."\r上传时间:\">";
}elseif ($error==1){
echo "超过了文件大小,在php.ini文件中设置";
}elseif ($error==2){
echo "超过了文件的大小MAX_FILE_SIZE选项指定的值";
}elseif ($error==3){
echo "文件只有部分被上传";
}elseif ($error==4){
echo "没有文件被上传";
}else{
echo "上传文件大小为0";
}
}else{
echo "请上传jpg,gif,png等格式的图片!";
}
}
?>
PHP移动文件PHP 中的 rename() 函数可以实现
rename() 函数重命名文件或目录或者移动到其他目录下。
若成功,则该函数返回 true。若失败,则返回 false。
rename(oldname,newname,context)
参数说明
oldname 必需。规定要重命名的文件或目录。
newname 必需。规定文件或目录的新名称。
context 可选。规定文件句柄的环境。context 是可修改流的行为的一套选项。
注释:
在 PHP 4.3.3 之前,rename() 不能在基于 *nix 的系统中跨磁盘分区重命名文件。
用于 oldname 中的封装协议必须和用于 newname 中的相匹配。
对 context 的支持是 PHP 5.0.0 添加的。
例如:
<?php
//把当前目录下的images.txt文件移动到test目录下并改名为pictures.txt
rename("images.txt","test/pictures.txt");
?>
关于php上传文件移动的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php上传文件移动 php中实现文件上传需要用到哪几个函数的详细内容...