PHP获取以prefix开头的文件名

Joh*_*hny 14 php

这是一个自定义功能.此时,此函数将获取默认目录中的所有文件,删除".php"并列出它们.

问题是我只想从具有起始前缀"tpl-"的目录中获取文件示例:tpl-login-page.php

/* Get template name of the file */
        function get_template_name (){
            $files = preg_grep('~\.(php)$~', scandir(admin . "templates/default/"));
                foreach($files as $file){
                    $file = str_replace('.php','',$file);
                    echo $file . "<br/>";
                }
        }
Run Code Online (Sandbox Code Playgroud)

use*_*035 15

您需要更改preg_grep中的正则表达式:

$files = preg_grep('~^tpl-.*\.php$~', scandir(admin . "templates/default/"));
Run Code Online (Sandbox Code Playgroud)

说明:

  1. ^ tpl- ---以"tpl-"开头

  2. .*---任何人物

  3. .(php)$ ---以.php结尾.实际上,你不需要在括号中加上"php".


Ser*_*p88 9

我喜欢另一种简单的方法:

1.获取文件夹中的所有文件

   $path = './images'; 
   $files = glob($path.'/*');
Run Code Online (Sandbox Code Playgroud)

2.获取所有扩展名为.jpg的文件

   $path = './images'; 
   $files = glob($path.'/*.jpg');
Run Code Online (Sandbox Code Playgroud)

3.获取所有带有前缀myprefix_的文件

   $path = './images'; 
   $files = glob($path.'/myprefix_*');
Run Code Online (Sandbox Code Playgroud)