当前位置: 首页>>代码示例>>PHP>>正文


PHP Utils::sfCopyDir方法代码示例

本文整理汇总了PHP中Eccube\Framework\Util\Utils::sfCopyDir方法的典型用法代码示例。如果您正苦于以下问题:PHP Utils::sfCopyDir方法的具体用法?PHP Utils::sfCopyDir怎么用?PHP Utils::sfCopyDir使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Eccube\Framework\Util\Utils的用法示例。


在下文中一共展示了Utils::sfCopyDir方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: doDownload

 /**
  * ダウンロードを実行する.
  *
  * 指定のテンプレートをアーカイブし, ブラウザに出力する.
  * 失敗した場合は, エラーメッセージを出力し, false を返す.
  *
  * @param  string  $template_code テンプレートコード
  * @return boolean 成功した場合 true; 失敗した場合 false
  */
 public function doDownload($template_code)
 {
     $from_dir = USER_TEMPLATE_REALDIR . $template_code . '/';
     $to_dir = SMARTY_TEMPLATES_REALDIR . $template_code . '/_packages/';
     if (Utils::recursiveMkdir($to_dir) === false) {
         $this->arrErr['err'] = '※ ディレクトリの作成に失敗しました<br />';
         return false;
     }
     Utils::sfCopyDir($from_dir, $to_dir);
     if (Application::alias('eccube.helper.file_manager')->downloadArchiveFiles(SMARTY_TEMPLATES_REALDIR . $template_code, $template_code) === false) {
         $this->arrErr['err'] = '※ アーカイブファイルの作成に失敗しました<br />';
         return false;
     }
     return true;
 }
开发者ID:ChigusaYasoda,项目名称:ec-cube,代码行数:24,代码来源:Template.php

示例2: doUpload

 /**
  * DBおよびファイルシステムにテンプレートパッケージを追加する.
  *
  * エラーが発生した場合は, エラーを出力し, false を返す.
  *
  * @param  FormParam  $objFormParam FormParamのインスタンス
  * @param  UploadFile  $objUpFile    UploadFileのインスタンス
  * @return boolean 成功した場合 true; 失敗した場合 false
  */
 public function doUpload($objFormParam, $objUpFile)
 {
     $template_code = $objFormParam->getValue('template_code');
     $template_name = $objFormParam->getValue('template_name');
     $device_type_id = $objFormParam->getValue('device_type_id');
     $template_dir = SMARTY_TEMPLATES_REALDIR . $template_code;
     $compile_dir = DATA_REALDIR . 'Smarty/templates_c/' . $template_code;
     $objQuery = Application::alias('eccube.query');
     $objQuery->begin();
     $arrValues = array('template_code' => $template_code, 'device_type_id' => $device_type_id, 'template_name' => $template_name, 'create_date' => 'CURRENT_TIMESTAMP', 'update_date' => 'CURRENT_TIMESTAMP');
     $objQuery->insert('dtb_templates', $arrValues);
     // フォルダ作成
     if (!file_exists($template_dir)) {
         if (!mkdir($template_dir)) {
             $this->arrErr['err'] = '※ テンプレートフォルダが作成できませんでした。<br/>';
             $objQuery->rollback();
             return false;
         }
     }
     if (!file_exists($compile_dir)) {
         if (!mkdir($compile_dir)) {
             $this->arrErr['err'] = '※ Smarty コンパイルフォルダが作成できませんでした。<br/>';
             $objQuery->rollback();
             return false;
         }
     }
     // 一時フォルダから保存ディレクトリへ移動
     $objUpFile->moveTempFile();
     // 解凍
     if (!Application::alias('eccube.helper.file_manager')->unpackFile($template_dir . '/' . $_FILES['template_file']['name'])) {
         $this->arrErr['err'] = '※ テンプレートファイルの解凍に失敗しました。<br/>';
         $objQuery->rollback();
         return false;
     }
     // ユーザデータの下のファイルをコピーする
     $from_dir = SMARTY_TEMPLATES_REALDIR . $template_code . '/_packages/';
     $to_dir = USER_REALDIR . 'packages/' . $template_code . '/';
     if (!Utils::recursiveMkdir($to_dir)) {
         $this->arrErr['err'] = '※ ' . $to_dir . ' の作成に失敗しました。<br/>';
         $objQuery->rollback();
         return false;
     }
     Utils::sfCopyDir($from_dir, $to_dir);
     $objQuery->commit();
     return true;
 }
开发者ID:ChigusaYasoda,项目名称:ec-cube,代码行数:55,代码来源:UpDown.php


注:本文中的Eccube\Framework\Util\Utils::sfCopyDir方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。