本文整理汇总了PHP中Gantry\Component\Filesystem\Folder::move方法的典型用法代码示例。如果您正苦于以下问题:PHP Folder::move方法的具体用法?PHP Folder::move怎么用?PHP Folder::move使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Gantry\Component\Filesystem\Folder
的用法示例。
在下文中一共展示了Folder::move方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: rename
public function rename($id, $title)
{
if (!$this->canDelete($id)) {
throw new \RuntimeException("Outline '{$id}' cannot be renamed", 400);
}
$gantry = $this->container;
/** @var UniformResourceLocator $locator */
$locator = $gantry['locator'];
$path = $locator->findResource("gantry-config://{$id}", true, true);
if (!$path || !is_dir($path)) {
throw new \RuntimeException('Outline not found', 404);
}
$folder = trim(preg_replace('|[^a-z\\d_-]|ui', '_', $title), '_');
if ($folder === 'default') {
throw new \RuntimeException("Outline cannot use reserved name '{$folder}'", 400);
}
$newPath = $locator->findResource("gantry-config://{$folder}", true, true);
if (is_dir($newPath)) {
throw new \RuntimeException("Outline '{$id}' already exists.", 400);
}
try {
Folder::move($path, $newPath);
} catch (\Exception $e) {
throw new \RuntimeException(sprintf('Renaming Outline failed: ', $e->getMessage()), 500, $e);
}
}