当前位置: 首页>>代码示例>>PHP>>正文


PHP RecursiveIteratorIterator::getPerms方法代码示例

本文整理汇总了PHP中RecursiveIteratorIterator::getPerms方法的典型用法代码示例。如果您正苦于以下问题:PHP RecursiveIteratorIterator::getPerms方法的具体用法?PHP RecursiveIteratorIterator::getPerms怎么用?PHP RecursiveIteratorIterator::getPerms使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RecursiveIteratorIterator的用法示例。


在下文中一共展示了RecursiveIteratorIterator::getPerms方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: build

 public static function build($directory)
 {
     $list = array();
     $unique = array();
     // Build
     $it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, RecursiveDirectoryIterator::KEY_AS_PATHNAME), RecursiveIteratorIterator::SELF_FIRST);
     while ($it->valid()) {
         $key = $it->key();
         // Make sure it's unique, Skip .svn files
         if (isset($unique[$key]) || stripos($key, '.svn') !== false) {
             $it->next();
             continue;
         }
         $unique[$key] = true;
         // Add
         $subpath = $it->getSubPathName();
         // Skip dot files, package files and .svn or CVS folders
         if (!$it->isDot() && substr(basename($subpath), 0, strrpos(basename($subpath), '.')) != 'package' && basename($subpath) != '.svn' && basename($subpath) != 'CVS') {
             $key = $it->key();
             //$list[$it->getSubPathName()] = array(
             $list[] = array('path' => self::fix_path($it->getSubPathName()), 'dir' => $it->isDir(), 'file' => $it->isFile(), 'perms' => substr(sprintf('%o', $it->getPerms()), -4), 'size' => $it->getSize(), 'sha1' => $it->isFile() ? sha1_file($key) : null);
         }
         $it->next();
     }
     ksort($list);
     return $list;
 }
开发者ID:robeendey,项目名称:ce,代码行数:27,代码来源:Abstract.php

示例2: copyDir

 /**
  * Copy directory
  *
  * @param string $source            
  * @param string $dest            
  */
 private function copyDir(string $source, string $dest)
 {
     $dir_iterator = new \RecursiveDirectoryIterator($source, \RecursiveDirectoryIterator::SKIP_DOTS);
     $iterator = new \RecursiveIteratorIterator($dir_iterator, \RecursiveIteratorIterator::SELF_FIRST);
     foreach ($iterator as $item) {
         if ($item->isDir()) {
             mkdir($dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName(), octdec(str_pad($iterator->getPerms(), 4, 0, STR_PAD_LEFT)));
         } else {
             $this->copy($item, $dest . DIRECTORY_SEPARATOR . $iterator->getSubPathName());
         }
     }
     return true;
 }
开发者ID:mkungla,项目名称:aframe-php,代码行数:19,代码来源:AframeComponentInstaller.php


注:本文中的RecursiveIteratorIterator::getPerms方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。