當前位置: 首頁>>代碼示例>>PHP>>正文


PHP DirectoryIterator::getOwner方法代碼示例

本文整理匯總了PHP中DirectoryIterator::getOwner方法的典型用法代碼示例。如果您正苦於以下問題:PHP DirectoryIterator::getOwner方法的具體用法?PHP DirectoryIterator::getOwner怎麽用?PHP DirectoryIterator::getOwner使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在DirectoryIterator的用法示例。


在下文中一共展示了DirectoryIterator::getOwner方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: _processFile

 /**
  * Process file
  *
  * @param int $directoryID
  * @param DirectoryIterator $entries
  */
 protected final function _processFile($directoryID, DirectoryIterator $entries)
 {
     $scanID = $this->_scanRow->scanID;
     // Load row when exists
     $fileRow = $this->_fileTable->fetchRow(array('directoryID' => $directoryID, 'name' => $entries->getFilename()));
     // Already scanned
     if ($fileRow && $fileRow->lastScanID == $scanID) {
         return;
     }
     $pathname = $entries->getPathname();
     // Data
     $data = array('modifyDate' => $this->_normalizeDate($entries->getMTime()), 'owner' => $this->_normalizeUser($entries->getOwner()), 'group' => $this->_normalizeGroup($entries->getGroup()), 'permissions' => $entries->getPerms(), 'size' => $entries->getSize(), 'linkTarget' => $entries->isLink() ? $entries->getLinkTarget() : null);
     // Content
     $contentHash = null;
     if (!$entries->isLink() && ($this->_alwaysCheckContent || !$fileRow || $fileRow->modifyDate != $data['modifyDate'] || $fileRow->size != $data['size'])) {
         // Non-accessible file
         if (!is_readable($pathname)) {
             $this->_log(self::LOG_ERROR, "\t{$pathname} cannot be read.");
             if ($fileRow) {
                 $contentHash = $fileRow->contentHash;
             }
         } else {
             $contentHash = md5_file($pathname);
         }
     }
     // Transaction
     $this->_db->beginTransaction();
     // New row
     if ($newRow = !$fileRow) {
         fwrite(STDOUT, "\t{$pathname} is new.\n");
         $fileRow = $this->_createFileRow(array('directoryID' => $directoryID, 'name' => $entries->getFilename()) + $data);
     }
     // Store values
     $oldValues = $fileRow->toArray();
     // Content
     if ($fileRow->contentHash != $contentHash) {
         $data['contentHash'] = $contentHash;
         if ($this->_storagePath) {
             $data['storedAs'] = $this->_copyFile($fileRow->fileID, $entries);
         }
     }
     // Update row
     $this->_updateFileRow($pathname, $fileRow, $data);
     $fileRow->lastScanID = $scanID;
     $fileRow->save();
     // Scan row update
     $this->_scanRow->lastOperationDate = new SeekR_Expression('NOW()');
     $this->_scanRow->save();
     // Transaction
     $this->_db->commit();
 }
開發者ID:AttilaJenei,項目名稱:Seek-R,代碼行數:57,代碼來源:SeekR.php

示例2: buildTableRow

 public function buildTableRow(DirectoryIterator $file, $includeParentDirectoryDots = true)
 {
     if (!$file->isDot() && substr($file->getFilename(), 0, 1) == '.' && Administration::instance()->Configuration->get('show-hidden', 'filemanager') != 'yes') {
         return;
     } elseif ($file->isDot() && !$includeParentDirectoryDots && $file->getFilename() == '..') {
         return;
     } elseif ($file->getFilename() == '.') {
         return;
     }
     $relpath = str_replace($this->getStartLocation() == '' ? DOCROOT : DOCROOT . $this->getStartLocation(), NULL, $file->getPathname());
     if (!$file->isDir()) {
         //if(File::fileType($file->getFilename()) == self::CODE)
         //	$download_uri = self::baseURL() . 'edit/?file=' . urlencode($relpath);
         //else
         $download_uri = self::baseURL() . 'download/?file=' . urlencode($relpath);
     } else {
         $download_uri = self::baseURL() . 'properties/?file=' . urlencode($relpath) . '/';
     }
     if (!$file->isDot()) {
         $td1 = Widget::TableData(Widget::Anchor($file->getFilename(), self::baseURL() . ($file->isDir() ? 'browse' . $relpath . '/' : 'properties/?file=' . urlencode($relpath)), NULL, 'file-type ' . ($file->isDir() ? 'folder' : File::fileType($file->getFilename()))));
         //$group = (function_exists('posix_getgrgid') ? posix_getgrgid($file->getGroup()) : $file->getGroup());
         //$owner = (function_exists('posix_getpwuid') ? posix_getpwuid($file->getOwner()) : $file->getOwner());
         $group = $file->getGroup();
         $owner = $file->getOwner();
         $td3 = Widget::TableData(File::getOctalPermission($file->getPerms()) . ' <span class="inactive">' . File::getReadablePerm($file->getPerms()), NULL, NULL, NULL, array('title' => (isset($owner['name']) ? $owner['name'] : $owner) . ', ' . (isset($group['name']) ? $group['name'] : $group)) . '</span>');
         $td4 = Widget::TableData(DateTimeObj::get(__SYM_DATETIME_FORMAT__, $file->getMTime()));
         if ($file->isWritable()) {
             if ($file->isDir()) {
                 $td5 = Widget::TableData(Widget::Anchor('Edit', $download_uri));
             } else {
                 $td5 = Widget::TableData(Widget::Anchor('Download', $download_uri));
             }
         } else {
             $td5 = Widget::TableData('-', 'inactive');
         }
     } else {
         $td1 = Widget::TableData(Widget::Anchor('&crarr;', self::baseURL() . 'browse' . $relpath . '/'));
         $td3 = Widget::TableData('-', 'inactive');
         $td4 = Widget::TableData('-', 'inactive');
         $td5 = Widget::TableData('-', 'inactive');
     }
     $td2 = Widget::TableData($file->isDir() ? '-' : General::formatFilesize($file->getSize()), $file->isDir() ? 'inactive' : NULL);
     $startlocation = DOCROOT . $this->getStartLocation();
     if (!$file->isDot()) {
         $td5->appendChild(Widget::Input('items[' . str_replace($startlocation, '', $file->getPathname()) . ($file->isDir() ? '/' : NULL) . ']', NULL, 'checkbox'));
     }
     return Widget::TableRow(array($td1, $td2, $td3, $td4, $td5));
 }
開發者ID:bauhouse,項目名稱:sym-extensions,代碼行數:48,代碼來源:extension.driver.php

示例3: DirectoryIterator

<?php

$dirname = 'DirectoryIterator_getOwner_basic';
mkdir($dirname);
$dir = new DirectoryIterator($dirname);
$expected = fileowner($dirname);
$actual = $dir->getOwner();
var_dump($expected == $actual);
$dirname = 'DirectoryIterator_getOwner_basic';
rmdir($dirname);
開發者ID:alphaxxl,項目名稱:hhvm,代碼行數:10,代碼來源:DirectoryIterator_getOwner_basic.php


注:本文中的DirectoryIterator::getOwner方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。