9 use RecursiveDirectoryIterator;
10 use RecursiveIteratorIterator;
61 public function rm(
$path, $skipPaths = [], $removeRoot =
false)
63 $filesystemIterator =
new RecursiveIteratorIterator(
64 new RecursiveDirectoryIterator(
$path),
65 RecursiveIteratorIterator::CHILD_FIRST
89 public function getInfo(
$path, $infoOptions = self::INFO_ALL, $skipFiles = [])
92 if ($infoOptions & self::INFO_READABLE) {
93 $info[
'readable'] =
true;
94 $info[
'readableMeta'] = [];
97 if ($infoOptions & self::INFO_WRITABLE) {
98 $info[
'writable'] =
true;
99 $info[
'writableMeta'] = [];
102 if ($infoOptions & self::INFO_SIZE) {
106 $filesystemIterator =
new RecursiveIteratorIterator(
107 new RecursiveDirectoryIterator(
$path),
108 RecursiveIteratorIterator::CHILD_FIRST
114 if (
$item->isLink()) {
118 if ($infoOptions & self::INFO_WRITABLE && !
$item->isWritable()) {
119 $info[
'writable'] =
false;
120 $info[
'writableMeta'][] =
$item->getPathname();
123 if ($infoOptions & self::INFO_READABLE && !
$item->isReadable()) {
124 $info[
'readable'] =
false;
125 $info[
'readableMeta'][] =
$item->getPathname();
128 if ($infoOptions & self::INFO_SIZE && !
$item->isDir()) {
rm($path, $skipPaths=[], $removeRoot=false)
getInfo($path, $infoOptions=self::INFO_ALL, $skipFiles=[])
foreach( $_productCollection as $_product)() ?>" class $info