public function getPathData($path = '', $typeFilter = '', $recursive = false, $filePattern = '')
{
$path = isset($this->paths[$path]) ? $this->paths[$path] : $path;
$path = $this->path . $path;
$filePatterns = (array) $filePattern;
$filter = function ($object) use($typeFilter, $filePatterns) {
foreach ($filePatterns as $filePattern) {
if ($filePattern !== '' && !preg_match($filePattern, $object['basename'])) {
return false;
}
}
return $typeFilter === '' || $typeFilter === $object['type'];
};
$data = $this->getPathAllData($path, $recursive);
return array_values(array_filter($data, $filter));
}