![](/img/trans.png)
[英]Recursively chmod/chown/chgrp all files and folder within a directory
[英]Recursively Search within a directory for all folder paths
我試圖遞歸地在目錄中搜索子目錄的任何目錄中的所有子目錄。 基本上所有文件夾都從根目錄開始,我需要將文件復制到找到的所有文件夾以及主根文件夾中。 我怎樣才能做到這一點?
這是我到目前為止的內容,但是它需要完全遞歸,以便獲取該根目錄中的所有文件夾,子目錄中的文件夾以及該目錄中的文件夾,進行無休止的搜索,直到不再有其他文件夾為止。
@copy($extendVars['dir'] . '/index.php', $real_extendpath . '/index.php');
$dh = @opendir($real_extendpath);
while (false !== ($obj = readdir($dh)))
{
if ($obj == '.' || $obj == '..')
continue;
if (is_dir($real_extendpath . '/' . $obj))
@copy($extendVars['dir'] . '/index.php', $real_extendpath . '/' . $obj . '/index.php');
}
closedir($dh);
使用RecursiveDirectoryIterator
和標准PHP庫( docs )中的朋友,僅需目錄的文件系統上的RecursiveDirectoryIterator
就非常容易。
一個基本的例子看起來像
$directories = new RecursiveIteratorIterator(
new ParentIterator(new RecursiveDirectoryIterator($directory_to_iterate)),
RecursiveIteratorIterator::SELF_FIRST);
foreach ($directories as $directory) {
// Do your work here
}
為了滿足您的特殊需求, // Do your work here
在以下代碼段中// Do your work here
即可。
copy($extendedVars['dir'] . '/index.php', $directory . '/index.php');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.