php递归创建目录的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php递归创建目录的方法,分享给大家供大家参考。

具体实现代码如下:

<?php
function mk_dir($path){
 //第1种情况,该目录已经存在
 if(is_dir($path)){
 return;
 }
 //第2种情况,父目录存在,本身不存在
 if(is_dir(dirname($path))){
 mkdir($path);
 }
 //第3种情况,父目录不存在
 if(!is_dir(dirname($path))){
 mk_dir(dirname($path));//创建父目录
 mkdir($path);
 }
}
$path = './e/b/c/f';
mk_dir($path);
?>

换成三元运算,代码如下:

<?php
function mk_dir($path){
 //第1种情况,该目录已经存在
 if(is_dir($path)){
 return;
 }
 //三元运算
 return is_dir(dirname($path)||mk_dir(dirname($path)?mkdir($path):false;
}
$path = './e/b/c/f';
mk_dir($path);
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

记录PHP错误日志 display_errors与log_errors的区别

display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利。推荐关闭此选项。...

php实现表单多按钮提交action的处理方法

表单内有两个提交按钮,要实现当点击不同的提交按钮时,分别进行两个不同的处理过程,在这里有实现表单多按钮提交action的处理方法分享给大家。 用PHP判断,一个表单两个按钮,按钮的na...

smarty的保留变量问题

以下是访问页面请求变量诸如get,post,cookies,server,enviroment和session变量的例子. 例如{$smarty.server.SERVER_NAME}取...

php约瑟夫问题解决关于处死犯人的算法

本文实例讲述了php约瑟夫问题解决关于处死犯人的算法。分享给大家供大家参考。具体分析如下: 古代某法官要判决IV个犯人的死刑,他有一条荒唐的法律将犯人站成一个圆圈,从第s个人开始数起,每...

php实现数字补零的方法总结

在php中有两个函数——至少有两个是否有其他的我还不知道,能够实现数字补零,str_pad(),sprintf()详细如下 str_pad 顾名思义这个函数是针对字符串来说的这个可以对...