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


PHP SC_Utils::sfMakeDir方法代码示例

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


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

示例1: lfAddTemplates

 /**
  * DBおよびTPL_PKG_PATHにテンプレートパッケージを追加する.
  *
  * @param object $objForm SC_FormParamのインスタンス
  * @param object $objUpFile SC_UploadFileのインスタンス
  * @return void
  */
 function lfAddTemplates($objForm, $objUpFile)
 {
     $template_code = $objForm->getValue('template_code');
     $template_dir = SMARTY_TEMPLATES_DIR . $template_code;
     $compile_dir = DATA_PATH . "Smarty/templates_c/" . $template_code;
     // フォルダ作成
     if (!file_exists($template_dir)) {
         mkdir($template_dir);
     }
     if (!file_exists($compile_dir)) {
         mkdir($compile_dir);
     }
     // 一時フォルダから保存ディレクトリへ移動
     $objUpFile->moveTempFile();
     // 解凍
     SC_Helper_FileManager::unpackFile($template_dir . "/" . $_FILES['template_file']['name']);
     // ユーザデータの下のファイルをコピーする
     $from_dir = SMARTY_TEMPLATES_DIR . $template_code . "/_packages/";
     $to_dir = USER_PATH . "packages/" . $template_code . "/";
     SC_Utils::sfMakeDir($to_dir);
     SC_Utils::sfCopyDir($from_dir, $to_dir);
     // DBにテンプレート情報を保存
     $this->lfRegisterTemplates($objForm->getHashArray());
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:31,代码来源:LC_Page_Admin_Design_Up_Down.php

示例2: process

 /**
  * Page のプロセス.
  *
  * @return void
  */
 function process()
 {
     $objView = new SC_AdminView();
     $this->objLayout = new SC_Helper_PageLayout_Ex();
     $package_path = USER_TEMPLATE_PATH . "/" . TEMPLATE_NAME . "/";
     // 認証可否の判定
     $objSess = new SC_Session();
     SC_Utils_Ex::sfIsSuccess($objSess);
     // ブロック一覧を取得
     $this->arrBlocList = $this->lfgetBlocData();
     // ブロックIDを取得
     if (isset($_POST['bloc_id'])) {
         $bloc_id = $_POST['bloc_id'];
     } else {
         if (isset($_GET['bloc_id'])) {
             $bloc_id = $_GET['bloc_id'];
         } else {
             $bloc_id = '';
         }
     }
     $this->bloc_id = $bloc_id;
     // bloc_id が指定されている場合にはブロックデータの取得
     if ($bloc_id != '') {
         $arrBlocData = $this->lfgetBlocData(" bloc_id = ? ", array($bloc_id));
         // ユーザー作成ブロックが存在する場合
         if (is_file($package_path . $arrBlocData[0]['tpl_path'])) {
             $arrBlocData[0]['tpl_path'] = $package_path . $arrBlocData[0]['tpl_path'];
             // 存在しない場合は指定テンプレートのブロックを取得
         } else {
             $arrBlocData[0]['tpl_path'] = TEMPLATE_DIR . $arrBlocData[0]['tpl_path'];
         }
         // テンプレートファイルの読み込み
         $arrBlocData[0]['tpl_data'] = file_get_contents($arrBlocData[0]['tpl_path']);
         $this->arrBlocData = $arrBlocData[0];
     }
     // メッセージ表示
     if (isset($_GET['msg']) && $_GET['msg'] == "on") {
         // 完了メッセージ
         $this->tpl_onload = "alert('登録が完了しました。');";
     }
     if (!isset($_POST['mode'])) {
         $_POST['mode'] = "";
     }
     switch ($_POST['mode']) {
         case 'preview':
             // プレビューファイル作成
             $prev_path = USER_INC_PATH . 'preview/bloc_preview.tpl';
             // ディレクトリの作成
             SC_Utils::sfMakeDir($prev_path);
             $fp = fopen($prev_path, "w");
             fwrite($fp, $_POST['bloc_html']);
             // FIXME いきなり POST はちょっと...
             fclose($fp);
             // プレビューデータ表示
             $this->preview = "on";
             $this->arrBlocData['tpl_data'] = $_POST['bloc_html'];
             $this->arrBlocData['tpl_path'] = $prev_path;
             $this->arrBlocData['bloc_name'] = $_POST['bloc_name'];
             $this->arrBlocData['filename'] = $_POST['filename'];
             $this->text_row = $_POST['html_area_row'];
             break;
         case 'confirm':
             $this->preview = "off";
             // エラーチェック
             $this->arrErr = $this->lfErrorCheck($_POST);
             // エラーがなければ更新処理を行う
             if (count($this->arrErr) == 0) {
                 // DBへデータを更新する
                 $this->lfEntryBlocData($_POST);
                 // 旧ファイルの削除
                 $old_bloc_path = $package_path . $arrBlocData[0]['tpl_path'];
                 if (file_exists($old_bloc_path)) {
                     unlink($old_bloc_path);
                 }
                 // ファイル作成
                 $new_bloc_path = $package_path . BLOC_DIR . $_POST['filename'] . ".tpl";
                 // ディレクトリの作成
                 SC_Utils::sfMakeDir($new_bloc_path);
                 $fp = fopen($new_bloc_path, "w");
                 fwrite($fp, $_POST['bloc_html']);
                 // FIXME いきなり POST はちょっと...
                 fclose($fp);
                 $arrBlocData = $this->lfgetBlocData(" filename = ? ", array($_POST['filename']));
                 $bloc_id = $arrBlocData[0]['bloc_id'];
                 $this->sendRedirect($this->getLocation("./bloc.php", array("bloc_id" => $bloc_id, "msg" => "on")));
                 exit;
             } else {
                 // エラーがあれば入力時のデータを表示する
                 $this->arrBlocData = $_POST;
             }
             break;
         case 'delete':
             $this->preview = "off";
             // DBへデータを更新する
             $objDBConn = new SC_DbConn();
//.........这里部分代码省略.........
开发者ID:khrisna,项目名称:eccubedrm,代码行数:101,代码来源:LC_Page_Admin_Design_Bloc.php

示例3: process

 /**
  * Page のプロセス.
  *
  * @return void
  */
 function process()
 {
     // 認証可否の判定
     $objSession = new SC_Session();
     SC_Utils::sfIsSuccess($objSession);
     // uniqidをテンプレートへ埋め込み
     $this->uniqid = $objSession->getUniqId();
     $objView = new SC_AdminView();
     switch ($this->lfGetMode()) {
         // 登録ボタン押下時
         case 'register':
             // 画面遷移の正当性チェック
             if (!SC_Utils::sfIsValidTransition($objSession)) {
                 sfDispError('');
             }
             // パラメータ検証
             $objForm = $this->lfInitRegister();
             if ($objForm->checkError()) {
                 SC_Utils_Ex::sfDispError('');
             }
             $template_code = $objForm->getValue('template_code');
             $this->tpl_select = $template_code;
             if ($template_code == "") {
                 $template_code = "default";
             }
             // DBへ使用するテンプレートを登録
             $this->lfRegisterTemplate($template_code);
             // XXX コンパイルファイルのクリア処理を行う
             $objView->_smarty->clear_compiled_tpl();
             // common.cssの内容を更新
             $this->lfChangeCommonCss($template_code);
             // テンプレートのコピー
             $this->lfCopyTemplate($template_code);
             // ブロック位置を更新
             $this->lfChangeBloc($template_code);
             // 完了メッセージ
             $this->tpl_onload = "alert('登録が完了しました。');";
             break;
             // 削除ボタン押下時
         // 削除ボタン押下時
         case 'delete':
             // 画面遷移の正当性チェック
             if (!SC_Utils::sfIsValidTransition($objSession)) {
                 SC_Utils::sfDispError('');
             }
             // パラメータ検証
             $objForm = $this->lfInitDelete();
             if ($objForm->checkError()) {
                 SC_Utils::sfDispError('');
             }
             //現在使用中のテンプレートとデフォルトのテンプレートは削除できないようにする
             $template_code = $objForm->getValue('template_code_temp');
             if ($template_code == TEMPLATE_NAME || $template_code == DEFAULT_TEMPLATE_NAME) {
                 $this->tpl_onload = "alert('選択中のテンプレートは削除出来ません');";
                 break;
             }
             $this->lfDeleteTemplate($template_code);
             break;
             // downloadボタン押下時
         // downloadボタン押下時
         case 'download':
             // 画面遷移の正当性チェック
             if (!SC_Utils::sfIsValidTransition($objSession)) {
                 SC_Utils::sfDispError('');
             }
             // パラメータ検証
             $objForm = $this->lfInitDownload();
             $template_code = $objForm->getValue('template_code_temp');
             // ユーザデータの下のファイルも保存する。
             $from_dir = USER_TEMPLATE_PATH . $template_code . "/";
             $to_dir = SMARTY_TEMPLATES_DIR . $template_code . "/_packages/";
             SC_Utils::sfMakeDir($to_dir);
             SC_Utils::sfCopyDir($from_dir, $to_dir);
             SC_Helper_FileManager::downloadArchiveFiles(SMARTY_TEMPLATES_DIR . $template_code);
             break;
             // プレビューボタン押下時
         // プレビューボタン押下時
         case 'preview':
             break;
         default:
             break;
     }
     // defaultパラメータのセット
     $this->templates = $this->lfGetAllTemplates();
     $this->now_template = TEMPLATE_NAME;
     // 画面の表示
     $objView->assignobj($this);
     $objView->display(MAIN_FRAME);
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:94,代码来源:LC_Page_Admin_Design_Template.php

示例4: sfMakeDir

 function sfMakeDir($path)
 {
     static $count = 0;
     $count++;
     // 無限ループ回避
     $dir = dirname($path);
     if (ereg("^[/]\$", $dir) || ereg("^[A-Z]:[\\]\$", $dir) || $count > 256) {
         // ルートディレクトリで終了
         return;
     } else {
         if (is_writable(dirname($dir))) {
             if (!file_exists($dir)) {
                 mkdir($dir);
                 GC_Utils::gfPrintLog("mkdir {$dir}");
             }
         } else {
             SC_Utils::sfMakeDir($dir);
             if (is_writable(dirname($dir))) {
                 if (!file_exists($dir)) {
                     mkdir($dir);
                     GC_Utils::gfPrintLog("mkdir {$dir}");
                 }
             }
         }
     }
     return;
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:27,代码来源:SC_Utils.php


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