『壹』 PHP中如何把一个文件夹下的一个文件移动到另一个文件夹下
可以使用()函数进行。
参考代码为:
<?php
$file='userfile/a/abc.txt'; //旧目录
if (file_exists($file)) {
$newFile='userfile/b/newabc.txt'; //新目录
($file,$newFile); //拷贝到新目录
unlink($file); //删除旧目录下的文件
}
其中,() 函数拷贝文件,语法:(source,destination)。将文件从 source 拷贝到 destination。如果成功则返回 TRUE,否则返回 FALSE。
(1)php怎么把文件内容输出到文件夹扩展阅读:
使用说明:
1、提示:如果要移动文件的话,使用 rename() 函数。用法:bool rename(string $oldname, string $newname),其中,$oldname为源文件的路径名,$newname为移动后的文件路径。如果二者表示的路径在同一目录下,则函数实际执行的是重命名,否则执行的是文件移动。
2、注释:从 PHP 4.3.0 开始,如果启用了 "fopen wrappers" 的话,source 和 destination 都可以是 URL。更多信息见 fopen()。如果 destination 是一个 URL,则如果封装协议不支持覆盖已有的文件时拷贝操作会失败。
3、重要事项:如果目标文件已存在,将会被覆盖。
『贰』 PHP中怎样将上传的图片存入指定文件夹或目录,就说这个
使用这个函数move_uploaded_file ($filename,$path);使用范例: if(!empty($_FILES["magfile"])) {
$uploaddir = $_SERVER['DOCUMENT_ROOT']."/uploads/";
$uploaddir.="test.jpg";
if(move_uploaded_file($_FILES["magfile"]["tmp_name"], $uploaddir)) {
echo "上传成功!";
}else{
print_r($_FILES);
}
}第一个参数是上传到服务器临时文件夹的绝对路径,$_FILES['文件域名称']['tmp_name']第二个参数是需要放到服务器上的绝对路径+文件名。觉得好请采纳~
『叁』 php执行file_put_contents后生成的文件如何自动下载到本地
file_put_contents只能生成文件在服务器上,无法读写客户端的文件系统,这是WEB的协议决定了的。
要想把file_put_contents生成在服务器上的文件发给浏览器用户,只有用下载的办法:文件生成到WEB可以访问的路径,然后使用<a href>建立链接让用户下载,示例代码:
file_put_contents('a.txt', $str);
echo '<a href=a.txt>下载文件</a>';
『肆』 PHP复制文件 移动到其他文件夹内
你要的是合并两个目录吗?
$source='D:/source/';
$target='D:/target/';
echo_merge($source,$target);
/**
*合并目录
*@param$source要合并的文件夹
*@param$target要合并的目的地
*@returnint处理的文件数
*/
function_merge($source,$target){
//路径处理
$source=preg_replace('#/\\#',DIRECTORY_SEPARATOR,$source);
$target=preg_replace('#/#',DIRECTORY_SEPARATOR,$target);
$source=rtrim($source,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR;
$target=rtrim($target,DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR;
//记录处理了多少文件
$count=0;
//如果目标目录不存在,则创建。
if(!is_dir($target)){
mkdir($target,0777,true);
$count++;
}
//搜索目录下的所有文件
foreach(glob($source.'*')as$filename){
if(is_dir($filename)){
//如果是目录,递归合并子目录下的文件。
$count+=_merge($filename,$target.basename($filename));
}elseif(is_file($filename)){
//如果是文件,判断当前文件与目标文件是否一样,不一样则拷贝覆盖。
//这里使用的是文件md5进行的一致性判断,可靠但性能低,应根据实际情况调整。
if(!file_exists($target.basename($filename))||md5(file_get_contents($filename))!=md5(file_get_contents($target.basename($filename)))){
($filename,$target.basename($filename));
$count++;
}
}
}
//返回处理了多少个文件
return$count;
}