php 循环遍历文件夹下面的所有目录及文件并且每个文件都写入一句话

php 循环遍历文件夹下面的所有目录及文件并且每个文件都写入一句话,第1张

/****************************

* 获取目录下的所有文件

* [$dir] 文件夹路径

****************************/

function deepScanDir($dir) {

    $fileArr = array ()

    $dirArr = array ()

    $dir = rtrim($dir, '//')

    if (is_dir($dir)) {

        $dirHandle = opendir($dir)

        while (false !== ($fileName = readdir($dirHandle))) {

            $subFile = $dir . DIRECTORY_SEPARATOR . $fileName

            if (is_file($subFile)) {

                $fileArr[] = $subFile

            }

            elseif (is_dir($subFile) && str_replace('.', '', $fileName) != '') {

                $dirArr[] = $subFile

                $arr = deepScanDir($subFile)

                $dirArr = array_merge($dirArr, $arr['dir'])

                $fileArr = array_merge($fileArr, $arr['file'])

            }

        }

        closedir($dirHandle)

    }

    return array (

        'dir' => $dirArr,

        'file' => $fileArr

    )

}

/****************************

* 将内容写入文件

* [$filename] 文件路径

* [$contents]  文件内容

* [$type]     读写类型

****************************/

function writeFileContents($filename, $contents, $type='a') {

    if (!($fd = fopen($filename, $type)))

        return FALSE

    if (!fwrite($fd, $contents."\n")) {

        fclose($fd)

        return FALSE

    }

    fclose($fd)

    return true

}

#示例:

$dir = "/usr/local/php/test/"

$dirFiles = deepScanDir($dir)

if(!empty($dirFiles['file'])){

    foreach($dirFiles['file'] as $file){

        writeFileContents($file, "Hello", $type='a+')

    }

}

试编写代码如下:

<?php

$dir="D:/WWW/ftp" //指定的路径

$sitepath = 'http://localhost/ftp/'

//遍历文件夹下所有文件

if (false != ($handle = opendir ( $dir ))) {

    echo "$dir 目录下的文件列表:<BR/>"

    $i = 0

    while (false !== ($file = readdir($handle))) {

        if ($file != "." && $file != ".." && !is_dir($dir.'/'.$file)) {

            echo '<a href="' . $sitepath . $file . '">'.$file. '</a><br/>'

        }

    }

    //关闭句柄

    closedir($handle)

}

?>

代码中需要提示的是:

如果是运行于互联网上,需要考虑文件的访问安全性。

运行截图:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8124935.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存