public static function configure($config = [])
    {
        if (empty(static::$config)) {
            static::$config = $config;
        }

        if (!in_array($config['driver'], ["smtp", "mail"])) {
            throw new MailException("The type is not known.", E_USER_ERROR);
        }

        if ($config['driver'] == "mail") {
            if (!static::$instance instanceof Native) {
                static::$instance = new Native($config['mail']);
            }
        } else {
            if (!static::$instance instanceof Smtp) {
                static::$instance = new Smtp($config['smtp']);
            }
        }

        return static::$instance;
    }
public static function configure($config = [])
    {
        if (empty(static::$config)) {
            static::$config = $config;
        }

        if (!in_array($config['driver'], ["smtp", "mail"])) {
            throw new MailException("The type is not known.", E_USER_ERROR);
        }

        if ($config['driver'] == "mail") {
            if (!static::$instance instanceof Native) {
                static::$instance = new Native($config['mail']);
            }
        } else {
            if (!static::$instance instanceof Smtp) {
                static::$instance = new Smtp($config['smtp']);
            }
        }

        return static::$instance;
    }
public static function configure ( $ config = [ ] ) { if ( empty ( static :: $ config ) ) { static :: $ config = $ config ; } if ( ! in_array ( $ config [ 'driver' ] , [ "smtp" , "mail" ] ) ) { throw new MailException ( "The type is not known." , E_USER_ERROR ) ; } if ( $ config [ 'driver' ] == "mail" ) { if ( ! static :: $ instance instanceof Native ) { static :: $ instance = new Native ( $ config [ 'mail' ] ) ; } } else { if ( ! static :: $ instance instanceof Smtp ) { static :: $ instance = new Smtp ( $ config [ 'smtp' ] ) ; } } return static :: $ instance ; }
Configure la classe Mail

@param  array $config
@throws MailException
@return SimpleMail|Smtp
Configure la classe Mail