nレベルまでの完全なファイル構造を提供する関数があります。
function getDirectory($path = '.', $ignore = '') {
$dirTree = array ();
$dirTreeTemp = array ();
$ignore[] = '.';
$ignore[] = '..';
$dh = @opendir($path);
while (false !== ($file = readdir($dh))) {
if (!in_array($file, $ignore)) {
if (!is_dir("$path/$file")) {
//display of file and directory name with their modification time
$stat = stat("$path/$file");
$statdir = stat("$path");
$dirTree["$path"][] = $file. " === ".
date('Y-m-d H:i:s', $stat['mtime']) . " Directory ==
".$path."===". date('Y-m-d H:i:s', $statdir['mtime']) ;
} else {
$dirTreeTemp = getDirectory("$path/$file", $ignore);
if (is_array($dirTreeTemp))$dirTree =
array_merge($dirTree, $dirTreeTemp);
}
}
}
closedir($dh);
return $dirTree;
}
$ignore = array('.htaccess', 'error_log', 'cgi-bin', 'php.ini', '.ftpquota');
//function call
$dirTree = getDirectory('.', $ignore);
//file structure array print
print_r($dirTree);
今ここで私の要件は、私は2つのサイトを持っています
- 開発/テストサイト-すべての変更のテストを行う場所
- 本番サイト-開発サイトでのテストに従って、最終的にすべての変更を投稿します
たとえば、開発/テストサイトで画像のアップロードをテストし、本番サイトで公開するのが適切であることがわかった場合、開発/テストDBの詳細を本番DBに完全に転送しますが、ここで比較したいと思います。対応する画像ファイルをProductionフォルダに転送するためのファイル構造もあります。
画像を編集して同じ名前でアップロードすることで画像を更新する場合があります。この場合、画像ファイルはすでに存在しているため、「file_exist」ロジックの使用が制限されます。状況.... 2つのファイル構造を比較して、要件ごとに同期を実行するにはどうすればよいですか?
編集済み
要件はスクリプトである必要があります。これは、joomlaコンポーネントの機能として必要になります。これに従って返信してください。