这是一项自定义功能。此时,此函数将获取默认目录中的所有文件,删除“.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/>";
}
}
答案 0 :(得分:15)
您需要更改preg_grep中的正则表达式:
$files = preg_grep('~^tpl-.*\.php$~', scandir(admin . "templates/default/"));
说明:
^tpl-
- 以“tpl - ”
.*
- 任何字符
\.php$
- 以“.php”结尾
答案 1 :(得分:6)
我喜欢另一种简单的方法:
<强> 1。获取文件夹中的所有文件
$path = './images';
$files = glob($path.'/*');
<强> 2。获取所有扩展名为.jpg的文件
$path = './images';
$files = glob($path.'/*.jpg');
第3。获取所有前缀为myprefix _
的文件 $path = './images';
$files = glob($path.'/myprefix_*');
答案 2 :(得分:1)
$target_file_png = glob($target_dir.'/group_'.$groupId.'*.png');
$target_file_png
将返回一个数组,其中包含从$target_dir
开始的路径'/group_'.$groupId.'
中指定的文件夹中的所有文件,并将文件格式指定为*.png