Создать и вызвать функцию внутри метода класса

Я пытаюсь вызвать функцию внутри функции, но она не вызывается, и никакой ошибки не появляется.

Я создал $addFile функция для повторного использования в инструкции switch ниже.

public function findFilesBySize($path, $size)
{
if((!is_array($size)) || (count($size) != 2))
throw new \Exception("Second parameter should be array of comparison operator and value", 1);$path = (is_dir($path)) ? $path : getcwd();
$files = array();
$addFiles = function(array $files, \DirectoryIterator $file )
{
die('working'); // function not getting called
$files[] = $file->getFileName();
};
$iterator = new \DirectoryIterator($path);
foreach ($iterator as $file) {
if($file->isDir())
continue;
switch ($size[0]) {
case '<':
if($file->getSize() < $size[1]) {
$addFiles($files, $file);
}
break;
case '>':
if($file->getSize() > $size[1]) {
$addFiles($files, $file);
}
break;

default:
# code...
break;
}
}
return $files;
}

Дополнительная / дополнительная часть:
Мне не нравится подход переключения, и если кто-то может предложить какой-либо хороший подход, чтобы сделать if($file->getSize() $operator $value) тогда, пожалуйста, дайте мне знать.

0

Решение

Задача ещё не решена.

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

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector