Prose\UsingMysql::query PHP Method

query() public method

public query ( $sql )
    public function query($sql)
    {
        // what are we doing?
        $log = usingLog()->startAction(["run SQL against '{$this->args[0]}':", $sql]);
        // connect
        $conn = new mysqli($this->args[0], $this->args[1], $this->args[2]);
        if ($conn->connect_errno) {
            $log->endAction('unable to connect to database :( - ' . $conn->connect_error);
            throw new E5xx_ActionFailed(__METHOD__);
        }
        // switch database
        if (isset($this->args[2])) {
            if (!$conn->select_db($this->args[3])) {
                $log->endAction("unable to switch to database '{$this->args[2]}' - " . $conn->error);
                throw new E5xx_ActionFailed(__METHOD__);
            }
        }
        // run the SQL
        $result = $conn->query($sql);
        // what happened?
        if (!$result) {
            $log->endAction("failed to run query");
            throw new E5xx_ActionFailed(__METHOD__, "query failed - " . $conn->error);
        }
        // success
        $log->endAction();
        return $result;
    }