MB: Ist PDOStatement::setFetchMode Overloading?

Beitrag lesen

moin,

ich will mir meine Database-Klasse erneuern

warum nicht so?

[...]

So kannst Du alle Deine PDO-Objekte (auch PDOStatement etc.) nach Belieben erweitern.

hab ich ja konstruiert mit einer DatabaseModel Klasse die Driver, Host, Charset, User, Password und Options beinhaltet und per Constructor Injection diese Werte als Objekt an die eigentliche Database mit statischen Methoden übergibt. Mir gehts um anschaulicher, wiederverwendbarer Code was mich vor ein Problem stellt wie ich diese Fetchts verwenden kann. Über ein internes Closure komme ich an die Daten ran.

Interface DatabaseInterface {
    
    /**
     * @param type $category
     * @param type $constant
     */
    public static function setAttributes( int $category, $constant ) : void;
    
    /**
     * @param string $query
     * @param array $params
     */
    public static function get( string $query, array $params = [] );
    
    /**
     * @param string $query
     * @param array $params
     */
    public static function all( string $query, array $params = [] ) : array;
    
    /**
     * @param string $query
     * @param array $params
     */
    public static function send( string $query, array $params = [] ) : bool;
    
    /**
     * 
     */
    public static function fetchNum() : bool;
    
    /**
     * 
     */
    public static function fetchAssoc() : bool;
    
    /**
     * 
     */
    public static function fetchObject() : bool;
    
    /**
     * 
     */
    public static function fetchClass( string $class_name ) : bool;
}

lgmb