public function prepare(string $statement, array $driverOptions = []): Statement
    {
        if (null === $this->pdo) {
            $this->connect();
        }

        try {
            return new PdoStatement(
                    $this->pdo->prepare($statement, $driverOptions)
            );
        } catch (PDOException $pdoe) {
            throw new DatabaseException($pdoe->getMessage(), $pdoe);
        }
    }
public function prepare(string $statement, array $driverOptions = []): Statement
    {
        if (null === $this->pdo) {
            $this->connect();
        }

        try {
            return new PdoStatement(
                    $this->pdo->prepare($statement, $driverOptions)
            );
        } catch (PDOException $pdoe) {
            throw new DatabaseException($pdoe->getMessage(), $pdoe);
        }
    }
public function prepare ( string $ statement , array $ driverOptions = [ ] ) : Statement { if ( null === $ this -> pdo ) { $ this -> connect ( ) ; } try { return new PdoStatement ( $ this -> pdo -> prepare ( $ statement , $ driverOptions ) ) ; } catch ( PDOException $ pdoe ) { throw new DatabaseException ( $ pdoe -> getMessage ( ) , $ pdoe ) ; } }
creates a prepared statement

@param   string  $statement      SQL statement
@param   array   $driverOptions  optional  one or more key=>value pairs to set attribute values for the Statement object
@return  \stubbles\db\pdo\PdoStatement
@throws  \stubbles\db\DatabaseException
@see     http://php.net/pdo-prepare
creates a prepared statement