BaseQuery::execute PHP Méthode

execute() public méthode

Execute query with earlier added parameters
public execute ( ) : PDOStatement
Résultat PDOStatement
    public function execute()
    {
        $query = $this->buildQuery();
        $parameters = $this->buildParameters();
        $result = $this->fpdo->getPdo()->prepare($query);
        // At this point, $result is a PDOStatement instance, or false.
        // PDO::prepare() does not reliably return errors. Some database drivers
        // do not support prepared statements, and PHP emulates them. Postgresql
        // does support prepared statements, but PHP does not call Postgresql's
        // prepare function until we call PDOStatement::execute() below.
        // If PDO::prepare() worked properly, this is where we would check
        // for prepare errors, such as invalid SQL.
        if ($this->object !== false) {
            if (class_exists($this->object)) {
                $result->setFetchMode(PDO::FETCH_CLASS, $this->object);
            } else {
                $result->setFetchMode(PDO::FETCH_OBJ);
            }
        } elseif ($this->fpdo->getPdo()->getAttribute(PDO::ATTR_DEFAULT_FETCH_MODE) == PDO::FETCH_BOTH) {
            $result->setFetchMode(PDO::FETCH_ASSOC);
        }
        $time = microtime(true);
        if ($result && $result->execute($parameters)) {
            $this->time = microtime(true) - $time;
        } else {
            $result = false;
        }
        $this->result = $result;
        $this->debugger();
        return $result;
    }

Usage Example

 /** Execute insert query
  * @return integer last inserted id or false
  */
 public function execute()
 {
     $result = parent::execute();
     if ($result) {
         return $this->getPDO()->lastInsertId();
     }
     return false;
 }