Newscoop\NewscoopBundle\Entity\SystemPreferences::setOption PHP Метод

setOption() публичный Метод

Set option
public setOption ( string $option ) : string
$option string
Результат string
    public function setOption($option)
    {
        $this->option = $option;
        return $this;
    }

Usage Example

 /**
  * Magic function to set given value for given property
  *
  * @param  $property Given property
  * @param  $value    Value for given property
  *
  * @return void
  */
 public function __set($property, $value)
 {
     if (empty($property) || !is_string($property)) {
         return;
     }
     $checkProperty = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences')->findOneBy(array('option' => $property));
     if ($checkProperty) {
         $queryBuilder = $this->em->createQueryBuilder();
         $preference = $queryBuilder->update('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences', 's')->set('s.value', ':value')->set('s.created_at', ':lastmodified')->where('s.option = :property')->setParameters(array('value' => $value, 'property' => $property, 'lastmodified' => new \DateTime('now')))->getQuery();
         $preference->execute();
         $this->{$property} = $value;
     } else {
         $newProperty = new SystemPreferences();
         $newProperty->setOption($property);
         $newProperty->setValue($value);
         $newProperty->setCreatedAt(new \DateTime('now'));
         $this->em->persist($newProperty);
         $this->em->flush();
     }
 }