src/helpers/ObjectHelper.php
public static function findClassFromConfig(&$config, bool $removeClass = false)
    {
        // Normalize the config
        if (is_string($config)) {
            // Set as class
            $class = $config;

            // Clear class from config
            $config = '';
        } elseif (is_object($config)) {
            return get_class($config);
        } else {
            // Force Array
            if (!is_array($config)) {
                $config = ArrayHelper::toArray($config, [], false);
            }

            if ($removeClass) {
                if (!$class = ArrayHelper::remove($config, 'class')) {
                    $class = ArrayHelper::remove($config, 'type');
                }
            } else {
                $class = ArrayHelper::getValue(
                    $config,
                    'class',
                    ArrayHelper::getValue($config, 'type')
                );
            }
        }

        return $class;
    }
public static function findClassFromConfig(&$config, bool $removeClass = false)
    {
        // Normalize the config
        if (is_string($config)) {
            // Set as class
            $class = $config;

            // Clear class from config
            $config = '';
        } elseif (is_object($config)) {
            return get_class($config);
        } else {
            // Force Array
            if (!is_array($config)) {
                $config = ArrayHelper::toArray($config, [], false);
            }

            if ($removeClass) {
                if (!$class = ArrayHelper::remove($config, 'class')) {
                    $class = ArrayHelper::remove($config, 'type');
                }
            } else {
                $class = ArrayHelper::getValue(
                    $config,
                    'class',
                    ArrayHelper::getValue($config, 'type')
                );
            }
        }

        return $class;
    }
public static function findClassFromConfig ( & $ config , bool $ removeClass = false ) { // Normalize the config if ( is_string ( $ config ) ) { // Set as class $ class = $ config ; // Clear class from config $ config = '' ; } elseif ( is_object ( $ config ) ) { return get_class ( $ config ) ; } else { // Force Array if ( ! is_array ( $ config ) ) { $ config = ArrayHelper :: toArray ( $ config , [ ] , false ) ; } if ( $ removeClass ) { if ( ! $ class = ArrayHelper :: remove ( $ config , 'class' ) ) { $ class = ArrayHelper :: remove ( $ config , 'type' ) ; } } else { $ class = ArrayHelper :: getValue ( $ config , 'class' , ArrayHelper :: getValue ( $ config , 'type' ) ) ; } } return $ class ; }
Find a class from a config

@param $config
@param bool $removeClass
@return null|string
Find a class from a config