本文目录一览:
- 1、请问php如何自动创建文件夹和文件?
- 2、PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
- 3、php 创建文件夹
- 4、PHP如何创建文件夹(mkdir的用法,mkdir的语法)
- 5、php 生成自动创建文件夹并上传文件的示例代码
- 6、写一段简单的PHP建立文件夹代码
请问php如何自动创建文件夹和文件?
超简单,假设当前脚本文件在a/目录中,代码如下:
// 首先需要检测b目录是否存在
if (!is_dir('b/')) mkdir('b/'); // 如果不存在则创建
// 在检测b/目录中是否存在c.php文件
if (!file_exists('b/c.php')) file_put_contents('b/c.php', 'd'); // 如果c.php不存在则创建,当然还可以使用$file = fopen('b/c.php', 'a+')的方式创建然后用fwrite('d', $file)写入d-php生成文件夹的例子
以上若还有任何问题,欢迎追问~
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
如果做一个在线的文件管理系统的话,那么首先必须知道怎么读取目录和文件,其实这个功能几行代码就可以实现了。
输出效果:
实现代码:
复制代码
代码如下:
?php
$dir
=
"D:/";
//要获取的目录
echo
"**********
获取目录下所有文件和文件夹
***********hr/";
//先判断指定的路径是不是一个文件夹
if
(is_dir($dir)){
if
($dh
=
opendir($dir)){
while
(($file
=
readdir($dh))!=
false){
//文件名的全路径
包含文件名
$filePath
=
$dir.$file;
//获取文件修改时间
$fmt
=
filemtime($filePath);
echo
"span
style='color:#666'(".date("Y-m-d
H:i:s",$fmt).")/span
".$filePath."br/";
}
closedir($dh);
}
}
?
这只是最基础的效果,弄懂了,想做出其他的需求也很简单了。
php 创建文件夹
先用is_dir检测目录是否存在.不存在就用mkdirs创建该目录....然后再用mkdir创建需要的文件夹
PHP如何创建文件夹(mkdir的用法,mkdir的语法)
先我抄一段手册上的有关mkdir的描述,如下:说明bool mkdir ( string pathname [, int mode [, bool recursive [, resource context]]] ) 尝试新建一个由 pathname 指定的目录。 注意也许想用八进制数指定模式,也就是说该数应以零打头。模式也会被当前的 umask 修改,可以用 umask() 来改变。 注意: mode 在 Windows 下被忽略。自 PHP 4.2.0 起成为可选项。 默认的 mode 是 0777,意味着最大可能的访问权。有关 mode 的更多信息请阅读 chmod() 页面。 例1. mkdir() 例子?php mkdir("/path/to/my/dir", 0700); 如果成功则返回 TRUE,失败则返回 FALSE。 注意: 自 PHP 5.0.0 rmdir() 也可用于某些 URL 封装协议。参见附录N 的列表看看 rmdir() 支持哪些 URL 封装协议。 注意: 对 context 的支持是 PHP 5.0.0 添加的。有关 context 的说明见参考CLX, Stream Functions。注意: recursive 参数是 PHP 5.0.0 添加的。 注意: 当安全模式被激活时,PHP 将检查被操作的目录是否和正在执行的脚本有相同的 UID(所有者)。以上是PHP5手册上的描述信息,即你可以这样:mkdir('./test',0777)就能创建一个文件夹了。但是如何递归创建多级目录呢?其方式有: 1 PHP5 下创建目录函数 mkdir 增加了一个新的参数 recursive ,通过设置 recursive 为 true 可以实现递归创建目录的目的,但是对PHP4就不行了。 2 自己写一个递归创建多级目录。这里,我对第二种方式作一点说明,也有两种方式,如下:第一种(用mkdirs来产生多级父级)function mkdirs($dir, $mode = 0777) { if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE; if (!mkdirs(dirname($dir), $mode)) return FALSE; return @mkdir($dir, $mode); }说明: 1 首先 简单说一下mkdir()与mkdirs()的区别,以及,is_dir和dirname(): mkdir() 只能在已经存在的目录中创建创建文件夹(即父级必须有才行)。 mkdirs() 可以在不存在的目录中创建文件夹。诸如:a//b,既可以创建多级目录。 dirname()是返回路径中的目录部分。 is_dir()用于判断给出的文件名是否是一个有效的目录 2 大致流程为:(1) 先用is_dir判断是否已是一个文件夹,如果是则返回TRUE。如没有(或者不是文件夹),则试着创建它,当然有可以父级不存在,那mkdir直接就创不成功,但也为不报错,所以就用@来抑止报非致命错误。 (2)如果传参数都不满足条件,那么就进入第二个if语句,先是取得路径中的目录部分,当然有可能是不存在的多级父级,所以用了mkdirs()来先创建父级,如果成功(不成功返回FALSE),那么再用mkdir来创建最终的目录了。好了,以上就是第一种方案。-php生成文件夹的例子
php 生成自动创建文件夹并上传文件的示例代码
复制代码
代码如下:
?
session_start();
if($_SESSION['Company']=='')
{
//exit();
}
??php
//上传图片
$uptypes=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','application/x-shockwave-flash','image/x-png');-php生成文件夹的例子
$max_file_size=5000000;
//上传文件大小限制,
单位BYTE
$addtime=date("Ymd",time());
$testdir="./".$addtime."/";
if(file_exists($testdir)):
else:
mkdir($testdir,0777);
endif;
$destination_folder=$addtime."/";
//上传文件路径
$imgpreview=1;
//是否生成预览图(1为生成,其他为不生成);
$imgpreviewsize=1/2;
//缩略图比例
if
($_SERVER['REQUEST_METHOD']
==
'POST')
{
if
(!is_uploaded_file($_FILES["Pic"][tmp_name]))
//是否存在文件
{
echo
"font
color='red'文件不存在!/font";
exit;
}
$file
=
$_FILES["Pic"];
if($max_file_size
$file["size"])
//检查文件大小
{
echo
"font
color='red'文件太大!/font";
exit;
}
if(!in_array($file["type"],
$uptypes))
//检查文件类型
{
echo
"font
color='red'只能上传图像文件或Flash!/font";
exit;
}
if(!file_exists($destination_folder))
mkdir($destination_folder);
$filename=$file["tmp_name"];
$image_size
=
getimagesize($filename);
$pinfo=pathinfo($file["name"]);
$ftype=$pinfo[extension];
$PicName
=
time().".".$ftype;
$destination
=
$destination_folder.$PicName;
if
(file_exists($destination)
$overwrite
!=
true)
{
echo
"font
color='red'同名文件已经存在了!/a";
exit;
}
if(!move_uploaded_file
($filename,
$destination))
{
echo
"font
color='red'上传文件出错!/a";
exit;
}
$pinfo=pathinfo($destination);
$fname=$pinfo[basename];
}
??
$path
=
dirname(__FILE__);
require_once($path.'/../../Module/Factory.php');
$Factory
=
new
Factory();
$BLL_Trade
=
$Factory-FactoryTrade();
try
{
$Infor
=
new
Infor();
$Infor-Title
=
$_POST['Title'];
$Infor-Deposit
=
$_POST['Deposit'];
$Infor-Hire
=
$_POST['Hire'];
$Infor-Location
=
$_POST['Location'];
$Infor-Pic
=
$destination;
$Infor-Intro
=
$_POST['Intro'];
if($_SESSION['MemberId']
==''){
$Infor-Member-ID='';
}else
{
$Infor-Member-ID
=
$_SESSION['MemberId'];}
if($_POST['GoodsBarCode']
==''){
$Infor-Goods-BarCode
=
0;
}else
{
$Infor-Goods-BarCode
=
$_POST['GoodsBarCode'];}
$Infor-Class-ID
=
0;//日后修改
$Infor-IssueTime
=
time();
$Infor-ViewNum
=
0;
$Infor-State
=
1;//现在未定,日后修改
$Infor-Top
=
0;
$Infor-Recommend
=
0;
$Infor-BookMember-ID
=
0;
$Infor-BookTime
=
0;
$Infor-BookRemark
=
0;
$BLL_Trade-CreateInfor($Infor);
echo
'发布信息成功!';
}
catch
(Exception
$Err){
echo
$Err-getMessage();
}
?
写一段简单的PHP建立文件夹代码
主要先获取当前目录的路径,然后判断文件夹是否存在,不存在则创建。
?php
define('DIR_ROOT',
str_replace('\\','/',dirname(__FILE__)));//获取当前文件物理路径
$tmp_file_path
=
DIR_ROOT.'/tmp/';//在根目录下增加tmp目录的路径
if(is_dir($tmp_file_path))
echo
"tmp文件夹存在!";
else
{
mkdir($tmp_file_path,
0700);//如果不存在tmp目录,则建立
echo
"tmp文件夹不存在,尝试建立成功!br";//未检测建立是否成功
echo
"tmp目录为".$tmp_file_path;
}
?