Example #1
0
 public function toArray($skipNotSetProperties = false, $skipCast = false)
 {
     $result = array();
     foreach (static::table()->getColumns(true) as $column) {
         $value = $this->{$column->propertyName};
         if ($value instanceof Undefined) {
             if ($skipNotSetProperties) {
                 continue;
             } else {
                 $value = $column->getDefault();
             }
         } elseif (!$skipCast) {
             $value = Column::castField($value, $column->flags, false);
         }
         $result[$column->schemaName] = $value;
     }
     return $result;
 }