PHP如何获取文件夹下所以子文件夹的名称及子夹所以图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP如何获取文件夹下所以子文件夹的名称及子夹所以图片相关的知识,希望对你有一定的参考价值。

php如何获取文件夹下所以子文件夹的名称并显示
点击其中名称打开名称文件夹下的所以图片并显示

这个用到的技术就php对文件的操作,文件遍历。

这里有个我自己写文件夹遍历函数,你看看测试下。

//递归遍历文件夹,输出所有文件的路径
function bianli($path)
static $arr=array();
$str="";
if($open=opendir($path))
while($f=readdir($open))
$str=$path;
if($f!='.' && $f!='..')
$str=$str."/".$f;
if(is_dir($str))
$i++;
bianli($str);
else
$arr[]=$str;
//echo $str."<br>";





return $arr;


//遍历文件夹
function search_one_file($path)
$arr=array();
if($open=opendir($path))
while($f=readdir($open))
if($f!='.' && $f!='..')
$arr[]=$path."/".$f;



return $arr;

参考技术A scandir函数可以列车目录下面的文件和目录
opendir 打开目录
is_dir() 判断是否是目录
is_dir()判断是否为文件

上面几个函数,应该能满足你的需求了,另外,遇到这种问题,网上找函数应该是很容易的,比如这个问题,你可以查找“php目录函数”,一般就能得到一些函数了,再到php.net或者手册查找函数详情,一般都会有相关的或者同类型的目录函数,这样就能了解到很多相关的了,例如“http://www.php.net/scandir”
参考技术B 写个递归方法,用scandir扫逐级扫目录的内容,
用is_dir判断是否是目录,是目录就继续递归扫
参考技术C 直接用调入命令追问

请你详细解答行吗?最好贴上源码,谢谢

Think PHP递归获取所有的子分类的ID (删除当前及子分类)

递归获取所有的子分类的ID:

//递归获取所有的子分类的ID
function get_all_child($array,$id){
    $arr = array();
    foreach($array as $v){
        if($v[‘pid‘] == $id){
            $arr[] = $v[‘id‘];
            $arr = array_merge($arr,get_all_child($array,$v[‘id‘]));
        };
    };
    return $arr;
}

在进行删除栏目的时候,需要删除当前栏目下的所有子栏目:

//删除分类
public function delCate(){
    $get = I(‘get.pid‘);
    $cateId = M(‘category‘)->field(array(‘id‘,‘pid‘))->select();
    $delId = get_all_child($cateId,$get);
    $delId[] = $get;    
    $where = array(
        ‘id‘ => array(‘IN‘,$delId)
    );
    if(!M(‘category‘)->where($where)->delete()){
        $this->error(‘删除失败‘);
    };
    $this->success(‘删除成功‘,U(‘index‘));
}

 

以上是关于PHP如何获取文件夹下所以子文件夹的名称及子夹所以图片的主要内容,如果未能解决你的问题,请参考以下文章

php递归查找指定目录下及子文件名称是否包含中文空格及括号

php递归删除目录及子文件文件夹

批量去BOM头 遍历目录及子文件,文件夹 PHP源码

批量去BOM头 遍历目录及子文件,文件夹 PHP源码

PHP如何读出当前目录下所有文件?

Think PHP递归获取所有的子分类的ID (删除当前及子分类)