public function except(ArrayBase $comparedata)
    {
        $cmpvalue = function($v1, $v2) { return $v1==$v2 ? 0 : ($v1>$v2 ? 1 : -1); };
        $collection = $this->newInstance();

        $temp1 = array_udiff($this->getData(), $comparedata->getData(), $cmpvalue);
        $temp2 = array_udiff($comparedata->getData(), $this->getData(), $cmpvalue);
        $temp = array_merge($temp1, $temp2);
        unset($temp1, $temp2);

        $collection->setData($temp);
        unset($temp);
        return $collection;
    }
public function except(ArrayBase $comparedata)
    {
        $cmpvalue = function($v1, $v2) { return $v1==$v2 ? 0 : ($v1>$v2 ? 1 : -1); };
        $collection = $this->newInstance();

        $temp1 = array_udiff($this->getData(), $comparedata->getData(), $cmpvalue);
        $temp2 = array_udiff($comparedata->getData(), $this->getData(), $cmpvalue);
        $temp = array_merge($temp1, $temp2);
        unset($temp1, $temp2);

        $collection->setData($temp);
        unset($temp);
        return $collection;
    }
public function except ( ArrayBase $ comparedata ) { $ cmpvalue = function ( $ v1 , $ v2 ) { return $ v1 == $ v2 ? 0 : ( $ v1 > $ v2 ? 1 : - 1 ) ; } ; $ collection = $ this -> newInstance ( ) ; $ temp1 = array_udiff ( $ this -> getData ( ) , $ comparedata -> getData ( ) , $ cmpvalue ) ; $ temp2 = array_udiff ( $ comparedata -> getData ( ) , $ this -> getData ( ) , $ cmpvalue ) ; $ temp = array_merge ( $ temp1 , $ temp2 ) ; unset ( $ temp1 , $ temp2 ) ; $ collection -> setData ( $ temp ) ; unset ( $ temp ) ; return $ collection ; }
Difference to another object
@param \PerrysLambda\ArrayBase $comparedata
@return \PerrysLambda\ArrayBase
Difference to another object