public function merge($data, $key = false, $dataKey = false)
    {
        if ($data != false && (is_array($data) || is_object($data))) {
            foreach ($data as $item) {
                $this->add($item, $key, $dataKey, true);
            }
        }
        else {
            $this->add($data, $key, $dataKey);
        }
        return $this;
    }
public function merge($data, $key = false, $dataKey = false)
    {
        if ($data != false && (is_array($data) || is_object($data))) {
            foreach ($data as $item) {
                $this->add($item, $key, $dataKey, true);
            }
        }
        else {
            $this->add($data, $key, $dataKey);
        }
        return $this;
    }
public function merge ( $ data , $ key = false , $ dataKey = false ) { if ( $ data != false && ( is_array ( $ data ) || is_object ( $ data ) ) ) { foreach ( $ data as $ item ) { $ this -> add ( $ item , $ key , $ dataKey , true ) ; } } else { $ this -> add ( $ data , $ key , $ dataKey ) ; } return $ this ; }
Merges the data given into this Container.

@param data The data to merge in.
@param key The key name to sore the data in (should only be used when passing a single resource in)
@param dataKey The value on the object/array to use as a key.
@return self
Merges the data given into this Container .