我在服务器上有一个文件夹,但是获取这些文件却遇到了一些困难。我的代码是
$dir = 'F:\\wamp\www\files';
if (is_dir($dir)) {
if(($file = scandir($dir))!==false) {
foreach ($file as $key => $value) {
$name = substr($value,0,-7);
scandir()函数返回返回名称列表的文件数组,即
manoj254.txt
manoj234.txt
pooza145.txt
pooza452.txt
ramesh418.txt
ramesh231.txt
并且我已经使用substr()函数删除了扩展名,之后输出为$ name
manoj
manoj
pooza
pooza
ramesh
ramesh
但是我需要输出$ name,没有duplicate.i.e
manoj
pooza
ramesh
这意味着删除重复...可以任何身体帮助我PLZ !!
答案 0 :(得分:0)
您可以尝试这样的事情:
function getUniqueFileNames($path = null)
{
if($path && $files = scandir($path)) {
$names = array_map(function($i) {
if(is_file($i)) return str_replace(strrchr($i, '.'), '', $i);
}, $files);
return array_unique(array_filter($names));
}
}
使用它像:
$filenames = getUniqueFileNames('F:\\wamp\www\files');
还有其他方法。