2

我在这里搜索了一些关于我的问题的主题,但我没有找到或者有些对我不起作用。

我在codeigniter中使用elfinder,然后在连接器文件中我需要过滤以点字符开头的文件名。我想这样做是因为文件管理器显示 .tmb (缩略图)文件夹,而我不想...我只想过滤所有以点开头的文件名:

.tmb .htaccess .folder .file .任何文件或文件夹

我尝试了很多正则表达式 ('pattern' => '/^TEST$/') 但它对我不起作用。

谢谢!

    public function elfinder_init(){
    if ($this->session->userdata('name')) {

        $ruta = trim($this->input->get("path"));

        $opts = array(
             //'debug' => true,
                'roots' => array(
                            array(
                                'driver' => 'LocalFileSystem',
                                'path'   => set_realpath($ruta),
                                'URL'    => site_url($ruta) . "/",
                                'accessControl' => 'access',
                                'defaults' => array('read' => true, 'write' => true),
                                'encoding' => '',
                                'attributes' => array(
                                        array(
                                                'pattern' => '/^TEST$/',
                                                'hidden' => true,
                                                'read'    => true,
                                                'write'   => true,
                                                'locked'  => false
                                        )
                                )
                                // more elFinder options here
                            )
                )
        );



        $this->load->library('elfinder_lib', $opts);

    }
}
4

1 回答 1

2

我找到了一种使用下一个模式隐藏缩略图文件夹的方法:

'pattern' => '/\.tmb$/',

虽然我认为最好的方法是对所有以点开头的文件名使用其他模式,而不仅仅是 .tmb 文件夹......

我也尝试过在 php 文件中使用下一个代码:

if (preg_match("/^\./", ".tmb")) 
    echo "The name has a dot";
else
    echo "The name hasn't dot";

它工作得很好......为什么在模式中不起作用?这个没看懂。。。xd

于 2015-03-05T16:17:35.977 回答