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