本文整理汇总了PHP中PublicFileManager::copyFile方法的典型用法代码示例。如果您正苦于以下问题:PHP PublicFileManager::copyFile方法的具体用法?PHP PublicFileManager::copyFile怎么用?PHP PublicFileManager::copyFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PublicFileManager
的用法示例。
在下文中一共展示了PublicFileManager::copyFile方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execute
/**
* Save the new image file.
* @param $request Request.
*/
function execute($request)
{
$temporaryFile = $this->fetchTemporaryFile($request);
import('classes.file.PublicFileManager');
$publicFileManager = new PublicFileManager();
if (is_a($temporaryFile, 'TemporaryFile')) {
$type = $temporaryFile->getFileType();
$extension = $publicFileManager->getImageExtension($type);
if (!$extension) {
return false;
}
$locale = AppLocale::getLocale();
$uploadName = $this->getFileSettingName() . '_' . $locale . $extension;
if ($publicFileManager->copyFile($temporaryFile->getFilePath(), $publicFileManager->getSiteFilesPath() . '/' . $uploadName)) {
// Get image dimensions
$filePath = $publicFileManager->getSiteFilesPath();
list($width, $height) = getimagesize($filePath . '/' . $uploadName);
$site = $request->getSite();
$siteDao = DAORegistry::getDAO('SiteDAO');
$value = $site->getSetting($this->getFileSettingName());
$imageAltText = $this->getData('imageAltText');
$value[$locale] = array('originalFilename' => $temporaryFile->getOriginalFileName(), 'uploadName' => $uploadName, 'width' => $width, 'height' => $height, 'dateUploaded' => Core::getCurrentDate(), 'altText' => $imageAltText[$locale]);
$site->updateSetting($this->getFileSettingName(), $value, 'object', true);
// Clean up the temporary file
$this->removeTemporaryFile($request);
return true;
}
}
return false;
}
示例2: execute
/**
* Save the new image file.
* @param $request Request.
*/
function execute($request)
{
$temporaryFile = $this->fetchTemporaryFile($request);
import('classes.file.PublicFileManager');
$publicFileManager = new PublicFileManager();
if (is_a($temporaryFile, 'TemporaryFile')) {
$type = $temporaryFile->getFileType();
if ($type != 'text/plain' && $type != 'text/css') {
return false;
}
$settingName = $this->getFileSettingName();
$site = $request->getSite();
$uploadName = $site->getSiteStyleFilename();
if ($publicFileManager->copyFile($temporaryFile->getFilePath(), $publicFileManager->getSiteFilesPath() . '/' . $uploadName)) {
$siteDao = DAORegistry::getDAO('SiteDAO');
$site->setOriginalStyleFilename($temporaryFile->getOriginalFileName());
$siteDao->updateObject($site);
// Clean up the temporary file
$this->removeTemporaryFile($request);
return true;
}
}
return false;
}
示例3: restorePublicFolder
function restorePublicFolder()
{
$publicFileManager = new PublicFileManager();
$oldPublicFolder = $this->publicFolderPath;
$newPublicFolder = $publicFileManager->getJournalFilesPath($this->journal->getId());
$dir = new DirectoryIterator($oldPublicFolder);
foreach ($dir as $fileinfo) {
if (!$fileinfo->isDot()) {
if ($fileinfo->isDir()) {
$publicFileManager->copyDir($fileinfo->getPathname(), $newPublicFolder . "/" . $fileinfo->getFileName());
} else {
if ($fileinfo->isFile()) {
$publicFileManager->copyFile($fileinfo->getPathname(), $newPublicFolder . "/" . $fileinfo->getFileName());
}
}
}
}
}