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


PHP Object_Abstract::update方法代码示例

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


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

示例1: update

 /**
  * @return void
  */
 protected function update()
 {
     $fieldDefintions = $this->getO_class()->getFieldDefinitions();
     foreach ($fieldDefintions as $fd) {
         $getter = "get" . ucfirst($fd->getName());
         $setter = "set" . ucfirst($fd->getName());
         if (method_exists($this, $getter)) {
             //To make sure, inherited values are not set again
             $inheritedValues = Object_Abstract::doGetInheritedValues();
             Object_Abstract::setGetInheritedValues(false);
             $value = $this->{$getter}();
             if (is_array($value) and ($fd instanceof Object_Class_Data_Multihref or $fd instanceof Object_Class_Data_Objects)) {
                 //don't save relations twice
                 $this->{$setter}(array_unique($value));
             }
             Object_Abstract::setGetInheritedValues($inheritedValues);
             $value = $this->{$getter}();
             $omitMandatoryCheck = $this->getOmitMandatoryCheck();
             /*$timeSinceCreation = (time()-$this->getCreationDate());
               if($timeSinceCreation <= 5){
                   // legacy hack: in previous version there was no check for mandatory fields,
                   // and everybody uses the save method for new object creation - so now let's evict the mandatory check
                   // if the object was created within the last 5 seconds
                   $omitMandatoryCheck=true;
                   Logger::debug("executing mandatory fields check for object [ ".$this->getId()." ]");
               }
               */
             //check throws Exception
             try {
                 $fd->checkValidity($value, $omitMandatoryCheck);
             } catch (Exception $e) {
                 if ($this->getO_class()->getAllowInherit()) {
                     //try again with parent data when inheritance in activated
                     try {
                         $getInheritedValues = Object_Abstract::doGetInheritedValues();
                         Object_Abstract::setGetInheritedValues(true);
                         $value = $this->{$getter}();
                         $fd->checkValidity($value, $omitMandatoryCheck);
                         Object_Abstract::setGetInheritedValues($getInheritedValues);
                     } catch (Exception $e) {
                         throw new Exception($e->getMessage() . " fieldname=" . $fd->getName());
                     }
                 } else {
                     throw new Exception($e->getMessage() . " fieldname=" . $fd->getName());
                 }
             }
         }
     }
     parent::update();
     $this->getResource()->update();
     $this->saveScheduledTasks();
     $this->saveVersion(false, false);
     $this->saveChilds();
     Pimcore_API_Plugin_Broker::getInstance()->postUpdateObject($this);
 }
开发者ID:shanky0110,项目名称:pimcore-custom,代码行数:58,代码来源:Concrete.php

示例2: update

 /**
  * @return void
  */
 public function update()
 {
     parent::update();
     $this->getResource()->update();
     Pimcore_API_Plugin_Broker::getInstance()->postUpdateObject($this);
 }
开发者ID:shanky0110,项目名称:pimcore-custom,代码行数:9,代码来源:Folder.php


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