Вход Регистрация
Файл: wapxl.ru/shaxty/classes/pdo.php
Строк: 46
<?php

// ---------------------------- Класс для работы с базами данных -------------------------------//
class PDO_ extends PDO {
  function 
__construct($dsn, $username, $password) {
    
parent :: __construct($dsn, $username, $password);
    
$this -> setAttribute(PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);
    
$this -> setAttribute(PDO :: ATTR_DEFAULT_FETCH_MODE, PDO :: FETCH_ASSOC);
  }

  function 
prepare($sql) {
    
$stmt = parent :: prepare($sql, array(
        
PDO :: ATTR_STATEMENT_CLASS => array('PDOStatement_')
        ));
    return 
$stmt;
  }

  function 
query($sql, $params = array()) {
    
$stmt = $this -> prepare($sql);
    
$stmt -> execute($params);
    return 
$stmt;
  }

  function 
querySingle($sql, $params = array()) {
    
$stmt = $this -> query($sql, $params);
    
$stmt -> execute($params);
    return 
$stmt -> fetchColumn(0);
  }

  function 
queryFetch($sql, $params = array()) {
    
$stmt = $this -> query($sql, $params);
    
$stmt -> execute($params);
    return 
$stmt -> fetch();
  }
}
// ----------------------------------------------------//
class PDOStatement_ extends PDOStatement {
  function 
execute($params = array()) {
    if (
func_num_args() == 1) {
      
$params = func_get_arg(0);
    } else {
      
$params = func_get_args();
    }
    if (!
is_array($params)) {
      
$params = array($params);
    }
    
parent :: execute($params);
    return 
$this;
  }

  function 
fetchSingle() {
    return 
$this -> fetchColumn(0);
  }

  function 
fetchAssoc() {
    
$this -> setFetchMode(PDO :: FETCH_NUM);
    
$data = array();
    while (
$row = $this -> fetch()) {
      
$data[$row[0]] = $row[1];
    }
    return 
$data;
  }
}


?>
Онлайн: 2
Реклама