Список файлов Laravel & amp; Подсчет по отфильтрованным именам файлов

Я хочу посчитать количество файлов, которые я фильтрую по имени. Я написал следующий код:

<?php
$directory = Config::get('app.app_working_directory')."/".$form_constant["dir"];
foreach(File::allFiles($directory) as $file)
{
if (starts_with($file->getFilename(), $file_tag."-".$id)) {
?>
{{HTML::image($form_constant["dir"].'/'.$file->getFilename(), $id, array('class' => 'col-md-3 img-thumbnail img-responsive'))}}
<?php
}
}
?>

Но это только для перечисления файлов в каталоге. Мои сохраненные файлы как это:

machine-parts-103-09122015150511.jpg
machine-parts-103-09122015150515.jpg
machine-parts-1072-09122015143157.jpg

Формат: машинная часть- $ id-microtime (). Как я могу считать как просто имя файла, начинающееся «machine-part- $ id-«? Пример для этих имен файлов:» Всего файлов: 2 «для» machine-parts-103-«. Спасибо…

1

Решение

Вы можете использовать функцию glob для подсчета количества файлов, которые соответствуют шаблону:

glob("/path/to/directory/machine-parts-103-*.jpg");

Это вернет вам массив со всеми именами файлов, которые соответствуют этому шаблону, и вы можете посчитать количество элементов в массиве.

1

Другие решения

Я исправил эту проблему. Спасибо, Оскар.рпр. Мой код:

<?php
$directory = Config::get('app.app_working_directory').'/'.$table_constant["dir"];
$file_count = count(glob($directory.'/'.$file_tag.'-'.$default_table_data->$table_constant["column"].'-*'));
?>
<td>{{$file_count}}</td>
0

По вопросам рекламы [email protected]