第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

要忽略的遞歸副本集文件夾

要忽略的遞歸副本集文件夾

PHP
慕田峪7331174 2022-10-28 14:54:19
我正在使用此功能將部分 WordPress 復制到備份目錄中,但是當我備份插件目錄時,程序進入無限循環(huán),有沒有辦法在復制文件夾時設置要忽略的文件夾?從回顯 $dir 我只是得到#resource ID xfunction sisb_content_dir_copy($src, $dst) {$dir = opendir($src);// Make the destination directory if not exist@mkdir($dst);// Loop through the files in source directorywhile( $file = readdir($dir) ) {  echo $file."</br>";    if (( $file != '.' ) && ( $file != '..' )){        if ( is_dir($src . '/' . $file) )        {            // Recursively calling custom copy function            // for sub directory            sisb_content_dir_copy($src . '/' . $file, $dst . '/' . $file);        }        else {            copy($src . '/' . $file, $dst . '/' . $file);        }    }}closedir($dir);}
查看完整描述

2 回答

?
天涯盡頭無女友

TA貢獻1831條經(jīng)驗 獲得超9個贊

只要您運行的 PHP 版本高于 5.4,您就可以使用 PHP 內(nèi)置的 DirectoryIterator 和 FilterIterator 類來實現(xiàn)您的目標。使用 Filter 類,您可以聲明迭代器接受哪些文件和目錄。除此之外,內(nèi)置的迭代器類更快,并且不會影響內(nèi)存消耗。這是一個小例子。


<?php

$directory = new RecursiveDirectoryIterator($path, FilesystemIterator::FOLLOW_SYMLINKS);

$filter = new RecursiveCallbackFilterIterator($directory, function($current, $key, $iterator) {

    // Skip hidden files and directories.

    if ($current->getFilename()[0] === '.') {

        return FALSE;

    }


    if ($current->isDir()) {

        // Only recurse into intended subdirectories

        return $current->getFilename() === 'wanted_dirname';

    } else {

       // Only consume files of interest.

       return strpos($current->getFilename(), 'wanted_filename') === 0;

    }

});


$iterator = new RecursiveIteratorIterator($filter);

$files = [];


foreach ($iterator as $info) {

   $files[] = $info->getPathname();

}

該$files數(shù)組包含所有通過回調(diào)過濾器的文件。這些文件你可以復制到任何你想要的地方。RecursiveCallbackFilterIterator類是 PHP 內(nèi)置類,您可以從 PHP 5.4 開始使用。


此示例取自RecursiveDirectoryIterator類的 PHP 文檔。感謝太陽,他在六年前做到了這一點。


希望有幫助。;)


查看完整回答
反對 回復 2022-10-28
?
暮色呼如

TA貢獻1853條經(jīng)驗 獲得超9個贊

只要您可以訪問足夠高的 PHP 版本,接受的答案會更好,但這適用于其他版本


function sisb_content_dir_copy($src, $dst) {

//echo $src.'</br>';

$dir = opendir($src);

//echo '</br>'.$dst;

// Make the destination directory if not exist

//if (!file_exists('/srv/www/sisb/public_html/wp-content/plugins/WP-SISB/contentbackups')) {

@mkdir($dst);

//}

// Loop through the files in source directory

while( $file = readdir($dir) ) {

  echo $file."</br>";

    if (( $file != '.' ) && ( $file != '..' )){

        if ( is_dir($src . '/' . $file) && ($file !='unwanted folder'))

        {


            // Recursively calling custom copy function

            // for sub directory

            sisb_content_dir_copy($src . '/' . $file, $dst . '/' . $file);


        }

        else {

          if($file !='unwanted folder'){

            copy($src . '/' . $file, $dst . '/' . $file);

          }

        }

    }

}


closedir($dir);

}


查看完整回答
反對 回復 2022-10-28
  • 2 回答
  • 0 關注
  • 128 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號