Example #1
0
 /**
  * $objectsに同名のキーがあればマージし無ければ追加する
  * @param self{} $objects 対象の連想配列
  * @param string $doc 値の情報を表す文字列
  * @param string $class 定義されているクラス名
  * @param string $prefix 名称につく接頭辞
  */
 public static function merge(array &$objects, $doc, $class, $prefix = null)
 {
     $self = new self();
     $self->set($doc, $class);
     $name = $prefix . $self->name();
     if ($self->is_name() && isset($objects[$name])) {
         $objects[$name]->type($self->type());
         $objects[$name]->array($self->array());
         $objects[$name]->module($self->module());
         if ($self->is_document()) {
             $objects[$name]->document($self->document());
         }
     }
 }