有没有快速的方法将相同的php文件添加到许多文件夹?

时间:2012-05-01 12:56:38

标签: php directory

我有一个index.php文件。在我的根文件夹中,大约有200个文件夹。我想将index.php文件添加到所有200文件夹中。而不是复制粘贴,有一种快速的方法来添加它吗?

3 个答案:

答案 0 :(得分:2)

有一种快速的方法可以做到这一点,但我觉得有更好的方法来做你需要的。

索引文件是否纯粹是为了阻止人们看到文件夹? 如果是这样,请尝试将IndexIgnore *放入.htaccess

此处有更多信息:http://www.javascriptkit.com/howto/htaccess11.shtml

答案 1 :(得分:1)

好吧,就像所有其他人已经说过的那样,你的设计可能有些不对劲。如果你想确保人们无法访问它,只需使用Apache来做到这一点,而不是PHP。如果您仍然觉得需要将index.php文件添加到每个目录,请按以下步骤操作:

<?php
$content = 'Your content';

$files = glob( './*' );
foreach( $files as $file ) {
    if( is_dir( $file ) && is_writable( $file ) ) {
        file_put_contents( $file . '/index.php', $content );
    }
}

答案 2 :(得分:1)

使用此功能:

function putindexfiles($putfile,$start=""){
    $files = glob($start.'*',GLOB_MARK);
    foreach($files as $file){
        if(is_dir($file)){
            copy($putfile,$file.'index.php');
            putindexfiles($putfile,$file);
        }
    }
}

此函数使用递归,因此所有子目录也会受到影响。

和$ putfile是文件的路径,其内容将放在每个文件夹的index.php中。此脚本会在每个文件夹中自动创建所有index.php。

使用你不需要提供$ start的函数,因为这是默认参数是放置脚本的目录。

享受