本文整理汇总了PHP中TYPO3\CMS\Core\Resource\Folder::getOriginalResource方法的典型用法代码示例。如果您正苦于以下问题:PHP Folder::getOriginalResource方法的具体用法?PHP Folder::getOriginalResource怎么用?PHP Folder::getOriginalResource使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Core\Resource\Folder
的用法示例。
在下文中一共展示了Folder::getOriginalResource方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: transformFileReference
/**
* Retrieve data from a file reference
*
* @param \TYPO3\CMS\Core\Resource\ResourceInterface|Folder|\TYPO3\CMS\Core\Resource\AbstractFile $originalResource
* @return array
*/
protected function transformFileReference($originalResource)
{
static $depth = 0;
if ($originalResource instanceof AbstractFileFolder) {
if (++$depth > 10) {
throw new \RuntimeException('Max nesting level');
}
$result = $this->transformFileReference($originalResource->getOriginalResource());
$depth--;
return $result;
}
try {
if ($originalResource instanceof Folder) {
$filesInFolder = array();
foreach ($originalResource->getFiles() as $currentFile) {
$filesInFolder[] = $this->transformFileReference($currentFile);
}
return $filesInFolder;
}
if ($originalResource instanceof FileReference) {
// This would expose all data
// return $originalResource->getProperties();
list($title, $description) = $this->getTitleAndDescription($originalResource);
return array('name' => $originalResource->getName(), 'mimeType' => $originalResource->getMimeType(), 'url' => $originalResource->getPublicUrl(), 'size' => $originalResource->getSize(), 'title' => $title, 'description' => $description);
}
if ($originalResource instanceof FileInterface) {
return array('name' => $originalResource->getName(), 'mimeType' => $originalResource->getMimeType(), 'url' => $originalResource->getPublicUrl(), 'size' => $originalResource->getSize());
}
return array('name' => $originalResource->getName());
} catch (\RuntimeException $exception) {
return array();
}
}