コード例 #1
0
 function getValue()
 {
     $value = parent::getValue();
     if (is_null($value)) {
         $value = $this->default_selection;
     }
     if (is_scalar($value)) {
         return $value;
     }
     if (!($value_field = $this->getAttribute('value_field'))) {
         $value_field = 'id';
     }
     if ((is_array($value) || $value instanceof ArrayAccess) && isset($value[$value_field])) {
         return $value[$value_field];
     }
 }
コード例 #2
0
 function getValue()
 {
     $values = parent::getValue();
     if (!is_object($values) && !is_array($values)) {
         $values = $this->default_selection;
     }
     if (is_object($values) && !$values instanceof Iterator) {
         $values = $this->default_selection;
     }
     if (!($value_field = $this->getAttribute('value_field'))) {
         $value_field = 'id';
     }
     $result = array();
     foreach ($values as $value) {
         if (is_scalar($value)) {
             $result[] = $value;
         } elseif ((is_array($value) || $value instanceof ArrayAccess) && isset($value[$value_field])) {
             $result[] = $value[$value_field];
         }
     }
     return $result;
 }