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


PHP File::mkdir方法代码示例

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


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

示例1: send

 /**
  * @param null $options
  * @return bool|void
  * @throws \Exception
  * @throws \Zend_Http_Client_Exception
  */
 public function send($options = null)
 {
     $sourceFile = $this->getSourceFile();
     $destinationFile = $this->getDestinationFile();
     if (!$sourceFile) {
         throw new \Exception("No sourceFile provided.");
     }
     if (!$destinationFile) {
         throw new \Exception("No destinationFile provided.");
     }
     if (is_array($options)) {
         if ($options['overwrite'] == false && file_exists($destinationFile)) {
             throw new \Exception("Destination file : '" . $destinationFile . "' already exists.");
         }
     }
     if (!$this->getHttpClient()) {
         $httpClient = \Pimcore\Tool::getHttpClient(null, ['timeout' => 3600 * 60]);
     } else {
         $httpClient = $this->getHttpClient();
     }
     $httpClient->setUri($this->getSourceFile());
     $response = $httpClient->request();
     if ($response->isSuccessful()) {
         $data = $response->getBody();
         File::mkdir(dirname($destinationFile));
         $result = File::put($destinationFile, $data);
         if ($result === false) {
             throw new \Exception("Couldn't write destination file:" . $destinationFile);
         }
     } else {
         throw new \Exception("Couldn't download file:" . $sourceFile);
     }
     return true;
 }
开发者ID:solverat,项目名称:pimcore,代码行数:40,代码来源:Http.php

示例2: config

 /**
  * @param array $config
  */
 public function config($config = [])
 {
     $settings = null;
     // check for an initial configuration template
     // used eg. by the demo installer
     $configTemplatePath = PIMCORE_CONFIGURATION_DIRECTORY . "/system.template.php";
     if (file_exists($configTemplatePath)) {
         try {
             $configTemplate = new \Zend_Config(include $configTemplatePath);
             if ($configTemplate->general) {
                 // check if the template contains a valid configuration
                 $settings = $configTemplate->toArray();
                 // unset database configuration
                 unset($settings["database"]["params"]["host"]);
                 unset($settings["database"]["params"]["port"]);
             }
         } catch (\Exception $e) {
         }
     }
     // set default configuration if no template is present
     if (!$settings) {
         // write configuration file
         $settings = ["general" => ["timezone" => "Europe/Berlin", "language" => "en", "validLanguages" => "en", "debug" => "1", "debugloglevel" => "debug", "custom_php_logfile" => "1", "extjs6" => "1"], "database" => ["adapter" => "Mysqli", "params" => ["username" => "root", "password" => "", "dbname" => ""]], "documents" => ["versions" => ["steps" => "10"], "default_controller" => "default", "default_action" => "default", "error_pages" => ["default" => "/"], "createredirectwhenmoved" => "", "allowtrailingslash" => "no", "generatepreview" => "1"], "objects" => ["versions" => ["steps" => "10"]], "assets" => ["versions" => ["steps" => "10"]], "services" => [], "cache" => ["excludeCookie" => ""], "httpclient" => ["adapter" => "Zend_Http_Client_Adapter_Socket"]];
     }
     $settings = array_replace_recursive($settings, $config);
     // create initial /website/var folder structure
     // @TODO: should use values out of startup.php (Constants)
     $varFolders = ["areas", "assets", "backup", "cache", "classes", "config", "email", "log", "plugins", "recyclebin", "search", "system", "tmp", "versions", "webdav"];
     foreach ($varFolders as $folder) {
         \Pimcore\File::mkdir(PIMCORE_WEBSITE_VAR . "/" . $folder);
     }
     $configFile = \Pimcore\Config::locateConfigFile("system.php");
     File::putPhpFile($configFile, to_php_data_file_format($settings));
 }
开发者ID:pimcore,项目名称:pimcore,代码行数:37,代码来源:Setup.php

示例3: getWorkingDir

 /**
  * @static
  * @return string
  */
 public static function getWorkingDir()
 {
     $dir = PIMCORE_CONFIGURATION_DIRECTORY . "/videopipelines";
     if (!is_dir($dir)) {
         \Pimcore\File::mkdir($dir);
     }
     return $dir;
 }
开发者ID:yonetici,项目名称:pimcore-coreshop-demo,代码行数:12,代码来源:Config.php

示例4: __construct

 /**
  * @param string $data
  * @param string $filename
  */
 public function __construct($data, $filename = null)
 {
     if (!is_dir(PIMCORE_LOG_FILEOBJECT_DIRECTORY)) {
         File::mkdir(PIMCORE_LOG_FILEOBJECT_DIRECTORY);
     }
     $this->data = $data;
     $this->filename = $filename;
     if (empty($this->filename)) {
         $folderpath = PIMCORE_LOG_FILEOBJECT_DIRECTORY . strftime('/%Y/%m/%d');
         if (!is_dir($folderpath)) {
             mkdir($folderpath, 0775, true);
         }
         $this->filename = $folderpath . "/" . uniqid("fileobject_", true);
     }
     File::put($this->filename, $this->data);
 }
开发者ID:solverat,项目名称:pimcore,代码行数:20,代码来源:FileObject.php

示例5: loadFile

 /**
  * @return array|mixed
  */
 protected function loadFile()
 {
     if (!is_dir($this->getConfigDir())) {
         File::mkdir($this->getConfigDir());
     }
     if (empty($this->dashboards)) {
         if (is_file($this->getConfigFile())) {
             $dashboards = Serialize::unserialize(file_get_contents($this->getConfigFile()));
             if (!empty($dashboards)) {
                 $this->dashboards = $dashboards;
             }
         }
         if (empty($this->dashboards)) {
             // if no configuration exists, return the base config
             $this->dashboards = array("welcome" => array("positions" => array(array(array("id" => 1, "type" => "pimcore.layout.portlets.modificationStatistic", "config" => null), array("id" => 2, "type" => "pimcore.layout.portlets.modifiedAssets", "config" => null)), array(array("id" => 3, "type" => "pimcore.layout.portlets.modifiedObjects", "config" => null), array("id" => 4, "type" => "pimcore.layout.portlets.modifiedDocuments", "config" => null)))));
         }
     }
     return $this->dashboards;
 }
开发者ID:Gerhard13,项目名称:pimcore,代码行数:22,代码来源:Dashboard.php

示例6: loadFile

 /**
  * @return array|mixed
  */
 protected function loadFile()
 {
     if (!is_dir($this->getConfigDir())) {
         File::mkdir($this->getConfigDir());
     }
     if (empty($this->dashboards)) {
         if (is_file($this->getConfigFile())) {
             $dashboards = Serialize::unserialize(file_get_contents($this->getConfigFile()));
             if (!empty($dashboards)) {
                 $this->dashboards = $dashboards;
             }
         }
         if (empty($this->dashboards)) {
             $perspectiveCfg = Config::getRuntimePerspective();
             $dasboardCfg = $perspectiveCfg["dashboards"] ? $perspectiveCfg["dashboards"] : [];
             $this->dashboards = $dasboardCfg["predefined"] ? $dasboardCfg["predefined"] : [];
         }
     }
     return $this->dashboards;
 }
开发者ID:solverat,项目名称:pimcore,代码行数:23,代码来源:Dashboard.php

示例7: config

 /**
  * @param array $config
  */
 public function config($config = array())
 {
     $settings = null;
     // check for an initial configuration template
     // used eg. by the demo installer
     $configTemplatePath = PIMCORE_CONFIGURATION_DIRECTORY . "/system.xml.template";
     if (file_exists($configTemplatePath)) {
         try {
             $configTemplate = new \Zend_Config_Xml($configTemplatePath);
             if ($configTemplate->general) {
                 // check if the template contains a valid configuration
                 $settings = $configTemplate->toArray();
                 // unset database configuration
                 unset($settings["database"]["params"]["host"]);
                 unset($settings["database"]["params"]["port"]);
             }
         } catch (\Exception $e) {
         }
     }
     // set default configuration if no template is present
     if (!$settings) {
         // write configuration file
         $settings = array("general" => array("timezone" => "Europe/Berlin", "language" => "en", "validLanguages" => "en", "debug" => "1", "debugloglevel" => "debug", "custom_php_logfile" => "1", "extjs6" => "1"), "database" => array("adapter" => "Mysqli", "params" => array("username" => "root", "password" => "", "dbname" => "")), "documents" => array("versions" => array("steps" => "10"), "default_controller" => "default", "default_action" => "default", "error_pages" => array("default" => "/"), "createredirectwhenmoved" => "", "allowtrailingslash" => "no", "allowcapitals" => "no", "generatepreview" => "1"), "objects" => array("versions" => array("steps" => "10")), "assets" => array("versions" => array("steps" => "10")), "services" => array(), "cache" => array("excludeCookie" => ""), "httpclient" => array("adapter" => "Zend_Http_Client_Adapter_Socket"));
     }
     $settings = array_replace_recursive($settings, $config);
     // convert all special characters to their entities so the xml writer can put it into the file
     $settings = array_htmlspecialchars($settings);
     // create initial /website/var folder structure
     // @TODO: should use values out of startup.php (Constants)
     $varFolders = array("areas", "assets", "backup", "cache", "classes", "config", "email", "log", "plugins", "recyclebin", "search", "system", "tmp", "versions", "webdav");
     foreach ($varFolders as $folder) {
         \Pimcore\File::mkdir(PIMCORE_WEBSITE_VAR . "/" . $folder);
     }
     $config = new \Zend_Config($settings, true);
     $writer = new \Zend_Config_Writer_Xml(array("config" => $config, "filename" => PIMCORE_CONFIGURATION_SYSTEM));
     $writer->write();
 }
开发者ID:ChristophWurst,项目名称:pimcore,代码行数:40,代码来源:Setup.php

示例8: getTemporaryFile

 /**
  * returns the path to a temp file
  *
  * @return string
  */
 public function getTemporaryFile($fullPath = false)
 {
     $destinationPath = PIMCORE_TEMPORARY_DIRECTORY . "/asset-temporary/asset_" . $this->getId() . "_" . md5(microtime()) . "__" . $this->getFilename();
     if (!is_dir(dirname($destinationPath))) {
         File::mkdir(dirname($destinationPath));
     }
     $src = $this->getStream();
     $dest = fopen($destinationPath, "w+");
     stream_copy_to_stream($src, $dest);
     fclose($dest);
     @chmod($destinationPath, File::getDefaultMode());
     if ($fullPath) {
         return $destinationPath;
     }
     return str_replace(PIMCORE_DOCUMENT_ROOT, "", $destinationPath);
 }
开发者ID:Gerhard13,项目名称:pimcore,代码行数:21,代码来源:Asset.php

示例9: save

 /**
  * @param  User $user
  * @return void
  */
 public function save($user = null)
 {
     if ($this->getElement() instanceof Element\ElementInterface) {
         $this->setType(Element\Service::getElementType($this->getElement()));
     }
     $this->setSubtype($this->getElement()->getType());
     $this->setPath($this->getElement()->getFullPath());
     $this->setDate(time());
     $this->loadChilds($this->getElement());
     if ($user instanceof Model\User) {
         $this->setDeletedby($user->getName());
     }
     // serialize data
     Element\Service::loadAllFields($this->element);
     $this->element->_fulldump = true;
     $data = Serialize::serialize($this->getElement());
     $this->getResource()->save();
     if (!is_dir(PIMCORE_RECYCLEBIN_DIRECTORY)) {
         File::mkdir(PIMCORE_RECYCLEBIN_DIRECTORY);
     }
     File::put($this->getStoreageFile(), $data);
     $saveBinaryData = function ($element, $rec, $scope) {
         // assets are kina special because they can contain massive amount of binary data which isn't serialized, we create separate files for them
         if ($element instanceof Asset) {
             if ($element->getType() != "folder") {
                 $handle = fopen($scope->getStorageFileBinary($element), "w+");
                 $src = $element->getStream();
                 stream_copy_to_stream($src, $handle);
                 fclose($handle);
             }
             $children = $element->getChilds();
             foreach ($children as $child) {
                 $rec($child, $rec, $scope);
             }
         }
     };
     $saveBinaryData($this->getElement(), $saveBinaryData, $this);
     @chmod($this->getStoreageFile(), File::getDefaultMode());
 }
开发者ID:rolandstoll,项目名称:pimcore,代码行数:43,代码来源:Item.php

示例10: getImageThumbnail

 /**
  * @param $thumbnailName
  * @param int $page
  * @param bool $deferred $deferred deferred means that the image will be generated on-the-fly (details see below)
  * @return mixed|string
  */
 public function getImageThumbnail($thumbnailName, $page = 1, $deferred = false)
 {
     // just 4 testing
     //$this->clearThumbnails(true);
     if (!\Pimcore\Document::isAvailable()) {
         \Logger::error("Couldn't create image-thumbnail of document " . $this->getFullPath() . " no document adapter is available");
         return "/pimcore/static/img/filetype-not-supported.png";
     }
     $thumbnail = Image\Thumbnail\Config::getByAutoDetect($thumbnailName);
     $thumbnail->setName("document_" . $thumbnail->getName() . "-" . $page);
     try {
         if (!$deferred) {
             $converter = \Pimcore\Document::getInstance();
             $converter->load($this->getFileSystemPath());
             $path = PIMCORE_TEMPORARY_DIRECTORY . "/document-image-cache/document_" . $this->getId() . "__thumbnail_" . $page . ".png";
             if (!is_dir(dirname($path))) {
                 \Pimcore\File::mkdir(dirname($path));
             }
             $lockKey = "document-thumbnail-" . $this->getId() . "-" . $page;
             if (!is_file($path) && !Model\Tool\Lock::isLocked($lockKey)) {
                 Model\Tool\Lock::lock($lockKey);
                 $converter->saveImage($path, $page);
                 Model\Tool\Lock::release($lockKey);
             } else {
                 if (Model\Tool\Lock::isLocked($lockKey)) {
                     return "/pimcore/static/img/please-wait.png";
                 }
             }
         }
         if ($thumbnail) {
             $path = Image\Thumbnail\Processor::process($this, $thumbnail, $path, $deferred);
         }
         return preg_replace("@^" . preg_quote(PIMCORE_DOCUMENT_ROOT) . "@", "", $path);
     } catch (\Exception $e) {
         \Logger::error("Couldn't create image-thumbnail of document " . $this->getFullPath());
         \Logger::error($e);
     }
     return "/pimcore/static/img/filetype-not-supported.png";
 }
开发者ID:Gerhard13,项目名称:pimcore,代码行数:45,代码来源:Document.php

示例11: saveFolderAction

 public function saveFolderAction()
 {
     $object = Object::getById($this->getParam("id"));
     $classId = $this->getParam("class_id");
     // general settings
     $general = \Zend_Json::decode($this->getParam("general"));
     $object->setValues($general);
     $object->setUserModification($this->getUser()->getId());
     $object = $this->assignPropertiesFromEditmode($object);
     if ($object->isAllowed("publish")) {
         try {
             // grid config
             $gridConfig = \Zend_Json::decode($this->getParam("gridconfig"));
             if ($classId) {
                 $configFile = PIMCORE_CONFIGURATION_DIRECTORY . "/object/grid/" . $object->getId() . "_" . $classId . "-user_" . $this->getUser()->getId() . ".psf";
             } else {
                 $configFile = PIMCORE_CONFIGURATION_DIRECTORY . "/object/grid/" . $object->getId() . "-user_" . $this->getUser()->getId() . ".psf";
             }
             $configDir = dirname($configFile);
             if (!is_dir($configDir)) {
                 File::mkdir($configDir);
             }
             File::put($configFile, Tool\Serialize::serialize($gridConfig));
             $object->save();
             $this->_helper->json(array("success" => true));
         } catch (\Exception $e) {
             $this->_helper->json(array("success" => false, "message" => $e->getMessage()));
         }
     }
     $this->_helper->json(array("success" => false, "message" => "missing_permission"));
 }
开发者ID:emanuel-london,项目名称:pimcore,代码行数:31,代码来源:ObjectController.php

示例12: generate

 /**
  *
  */
 public function generate()
 {
     $errorImage = PIMCORE_PATH . '/static6/img/filetype-not-supported.png';
     $deferred = false;
     $generated = false;
     if (!$this->asset) {
         $this->filesystemPath = $errorImage;
     } elseif (!$this->filesystemPath) {
         $cs = $this->asset->getCustomSetting("image_thumbnail_time");
         $im = $this->asset->getCustomSetting("image_thumbnail_asset");
         if ($im || $this->imageAsset) {
             if ($this->imageAsset) {
                 $im = $this->imageAsset;
             } else {
                 $im = Model\Asset::getById($im);
             }
             if ($im instanceof Image) {
                 $imageThumbnail = $im->getThumbnail($this->getConfig());
                 $this->filesystemPath = $imageThumbnail->getFileSystemPath();
             }
         }
         if (!$this->filesystemPath) {
             $timeOffset = $this->timeOffset;
             if (!$this->timeOffset && $cs) {
                 $timeOffset = $cs;
             }
             // fallback
             if (!$timeOffset) {
                 $timeOffset = ceil($this->asset->getDuration() / 3);
             }
             $converter = \Pimcore\Video::getInstance();
             $converter->load($this->asset->getFileSystemPath());
             $path = PIMCORE_TEMPORARY_DIRECTORY . "/video-image-cache/video_" . $this->asset->getId() . "__thumbnail_" . $timeOffset . ".png";
             if (!is_dir(dirname($path))) {
                 File::mkdir(dirname($path));
             }
             if (!is_file($path)) {
                 $lockKey = "video_image_thumbnail_" . $this->asset->getId() . "_" . $timeOffset;
                 Model\Tool\Lock::acquire($lockKey);
                 // after we got the lock, check again if the image exists in the meantime - if not - generate it
                 if (!is_file($path)) {
                     $converter->saveImage($path, $timeOffset);
                     $generated = true;
                 }
                 Model\Tool\Lock::release($lockKey);
             }
             if ($this->getConfig()) {
                 $this->getConfig()->setFilenameSuffix("time-" . $timeOffset);
                 try {
                     $path = Image\Thumbnail\Processor::process($this->asset, $this->getConfig(), $path, $deferred, true, $generated);
                 } catch (\Exception $e) {
                     Logger::error("Couldn't create image-thumbnail of video " . $this->asset->getRealFullPath());
                     Logger::error($e);
                     $path = $errorImage;
                 }
             }
             $this->filesystemPath = $path;
         }
         \Pimcore::getEventManager()->trigger("asset.video.image-thumbnail", $this, ["deferred" => $deferred, "generated" => $generated]);
     }
 }
开发者ID:pimcore,项目名称:pimcore,代码行数:64,代码来源:ImageThumbnail.php

示例13: update

 /**
  * Updates and save the email log entry to the db and the file-system
  */
 protected function update()
 {
     $this->getDao()->update();
     if (!is_dir(PIMCORE_LOG_MAIL_PERMANENT)) {
         File::mkdir(PIMCORE_LOG_MAIL_PERMANENT);
     }
     if ($html = $this->getBodyHtml()) {
         if (File::put(PIMCORE_LOG_MAIL_PERMANENT . '/email-' . $this->getId() . '-html.log', $html) === false) {
             Logger::warn('Could not write html email log file. LogId: ' . $this->getId());
         }
     }
     if ($text = $this->getBodyText()) {
         if (File::put(PIMCORE_LOG_MAIL_PERMANENT . '/email-' . $this->getId() . '-text.log', $text) === false) {
             Logger::warn('Could not write text email log file. LogId: ' . $this->getId());
         }
     }
 }
开发者ID:pimcore,项目名称:pimcore,代码行数:20,代码来源:Log.php

示例14: fileexplorerAddFolderAction

 public function fileexplorerAddFolderAction()
 {
     $this->checkPermission("fileexplorer");
     $success = false;
     if ($this->getParam("filename") && $this->getParam("path")) {
         $path = $this->getFileexplorerPath("path");
         $file = $path . "/" . $this->getParam("filename");
         if (is_writeable(dirname($file))) {
             File::mkdir($file);
             $success = true;
         }
     }
     $this->_helper->json(array("success" => $success));
 }
开发者ID:yonetici,项目名称:pimcore-coreshop-demo,代码行数:14,代码来源:MiscController.php

示例15: generateScreenshotAction

 public function generateScreenshotAction()
 {
     $success = false;
     if ($this->getParam("id")) {
         $doc = Document::getById($this->getParam("id"));
         $url = Tool::getHostUrl() . $doc->getRealFullPath() . "?pimcore_preview=true";
         $config = \Pimcore\Config::getSystemConfig();
         if ($config->general->http_auth) {
             $username = $config->general->http_auth->username;
             $password = $config->general->http_auth->password;
             if ($username && $password) {
                 $url = str_replace("://", "://" . $username . ":" . $password . "@", $url);
             }
         }
         $tmpFile = PIMCORE_SYSTEM_TEMP_DIRECTORY . "/screenshot_tmp_" . $doc->getId() . ".png";
         $file = PIMCORE_TEMPORARY_DIRECTORY . "/document-page-previews/document-page-screenshot-" . $doc->getId() . ".jpg";
         $dir = dirname($file);
         if (!is_dir($dir)) {
             File::mkdir($dir);
         }
         try {
             if (\Pimcore\Image\HtmlToImage::convert($url, $tmpFile)) {
                 $im = \Pimcore\Image::getInstance();
                 $im->load($tmpFile);
                 $im->scaleByWidth(400);
                 $im->save($file, "jpeg", 85);
                 unlink($tmpFile);
                 $success = true;
             }
         } catch (\Exception $e) {
             \Logger::error($e);
         }
     }
     $this->_helper->json(array("success" => $success));
 }
开发者ID:yonetici,项目名称:pimcore-coreshop-demo,代码行数:35,代码来源:PageController.php


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