У меня есть папка на сервере, m выборка этих файлов, но некоторые трудности. мой код
$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.ie
manoj
pooza
ramesh
что означает удаление дубликатов... может ли любой орган помочь мне PLZ!
Вы можете попробовать что-то вроде этого:
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');
Есть и другие способы.