Вход Регистрация
Файл: _core/_inc/pdo.php
Строк: 61
<?php

    
# mark core  v1.0
    # author Drk in
    # date 24.10.19 

    # class PDO 

   
class PDO_ extends PDO {

    function 
__construct($dsn$username$password) {
        
parent :: __construct($dsn$username$password);
        
$this -> setAttribute(PDO :: ATTR_ERRMODEPDO :: ERRMODE_EXCEPTION);
        
$this -> setAttribute(PDO :: ATTR_DEFAULT_FETCH_MODEPDO :: FETCH_ASSOC);
    } 

    function 
prepare($sql) {
        
$stmt parent :: prepare($sql, array(
        
PDO :: ATTR_STATEMENT_CLASS => array('PDOStatement_'))); 
        return 
$stmt
    }  
 
    function 
query($sql$params = array()) { 
        static 
$count_query 1;
        global 
$count_query$count_query++;
        
$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
    }
    
}      
    
class 
DB 

    static 
$dbh
    public function 
__construct() { 
        try { 
            
self :: $dbh = new PDO_('mysql:host=' HOSTNAME ';dbname=' DATABASEUSERNAMEPASSWORD); 
            
self :: $dbh -> exec('SET CHARACTER SET utf8'); 
            
self :: $dbh -> exec('SET NAMES utf8'); 
        }      

        catch (
PDOException $e) { 
        die(
'К сожалению, не доступен сервер MySQL.');} }  
 
        final public function 
__destruct() { 
            
self :: $dbh null
        }  
        
}  
$database = new DB();     
    
?>
Онлайн: 3
Реклама