public function getData(array $whitelist = null)
    {
        $data = [];
        if ($whitelist !== null) {
            $whitelist = array_flip($whitelist);
        }
        $reflection = $this->getCurrentReflection();
        $usedGetters = [];
        foreach ($reflection->getEntityProperties() as $property) {
            $field = $property->getName();
            if ($whitelist !== null and !isset($whitelist[$field])) {
                continue;
            }
            $data[$field] = $this->__get($property->getName());
            $getter = $property->getGetter();
            if ($getter !== null) {
                $usedGetters[$getter] = true;
            }
        }
        foreach ($reflection->getGetters() as $name => $getter) {
            if (isset($usedGetters[$getter->getName()])) {
                continue;
            }
            $field = lcfirst(substr($name, 3));
            if ($whitelist !== null and !isset($whitelist[$field])) {
                continue;
            }
            if ($getter->getNumberOfRequiredParameters() === 0) {
                $data[$field] = $getter->invoke($this);
            }
        }
        return $data;
    }
public function getData(array $whitelist = null)
    {
        $data = [];
        if ($whitelist !== null) {
            $whitelist = array_flip($whitelist);
        }
        $reflection = $this->getCurrentReflection();
        $usedGetters = [];
        foreach ($reflection->getEntityProperties() as $property) {
            $field = $property->getName();
            if ($whitelist !== null and !isset($whitelist[$field])) {
                continue;
            }
            $data[$field] = $this->__get($property->getName());
            $getter = $property->getGetter();
            if ($getter !== null) {
                $usedGetters[$getter] = true;
            }
        }
        foreach ($reflection->getGetters() as $name => $getter) {
            if (isset($usedGetters[$getter->getName()])) {
                continue;
            }
            $field = lcfirst(substr($name, 3));
            if ($whitelist !== null and !isset($whitelist[$field])) {
                continue;
            }
            if ($getter->getNumberOfRequiredParameters() === 0) {
                $data[$field] = $getter->invoke($this);
            }
        }
        return $data;
    }
public function getData ( array $ whitelist = null ) { $ data = [ ] ; if ( $ whitelist !== null ) { $ whitelist = array_flip ( $ whitelist ) ; } $ reflection = $ this -> getCurrentReflection ( ) ; $ usedGetters = [ ] ; foreach ( $ reflection -> getEntityProperties ( ) as $ property ) { $ field = $ property -> getName ( ) ; if ( $ whitelist !== null and ! isset ( $ whitelist [ $ field ] ) ) { continue ; } $ data [ $ field ] = $ this -> __get ( $ property -> getName ( ) ) ; $ getter = $ property -> getGetter ( ) ; if ( $ getter !== null ) { $ usedGetters [ $ getter ] = true ; } } foreach ( $ reflection -> getGetters ( ) as $ name => $ getter ) { if ( isset ( $ usedGetters [ $ getter -> getName ( ) ] ) ) { continue ; } $ field = lcfirst ( substr ( $ name , 3 ) ) ; if ( $ whitelist !== null and ! isset ( $ whitelist [ $ field ] ) ) { continue ; } if ( $ getter -> getNumberOfRequiredParameters ( ) === 0 ) { $ data [ $ field ] = $ getter -> invoke ( $ this ) ; } } return $ data ; }
Gets high-level values of properties

@param array|null $whitelist
@return array
Gets high - level values of properties