PDO数据连接封装
<?php
$pdo = null;
function get_pdo()
{
global $pdo;
if (is_object($pdo) == false) {
$conn = 'mysql:host=localhost; port=3306; dbname=lx; ';
$usr = 'root';
$pwd = 'root';
$pdo = new PDO($conn, $usr, $pwd);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->query('set names utf8');
}
return $pdo;
}
// 增、删、改 语句函数封装
function get_count($get_pdo, $g)
{
return $get_pdo->exec($g);
}
// 查询语句 函数封装
function get_result($get_pdo, $g)
{
$cx = $get_pdo->query($g);
return $cx->fetchAll(PDO::FETCH_ASSOC);
}
//绑定数据的 函数封装
function show($pdo, $query, $data)
{
{
$item = $pdo->prepare($query);
}
foreach ($data as $key => $val) {
$item->bindvalue($key + 1, $val);
}
$item->execute();
return $item;
}
// 突破作用域的简化 数据绑定封装
function get_stmt($sql, array $row = [])
{
try {
$pdo = get_pdo();
$item = $pdo->prepare($sql);
foreach ($row as $key => $val) {
$item->bindvalue($key + 1, $val);
}
$item->execute();
return $item;
} catch (PDOException $e) {
echo "你的数据有错误:" . $e->getMessage();
return false;
}
};
// 封装对数据的输出方式与类型
function get_open($sql, array $row = [], $dType = 2, $rType = 'array')
{
$item = get_stmt($sql, $row);
$item->execute();
switch ($dType) {
case 0:
return $item->rowcount();
case 1:
return $item->fetch($rType == 'array' ? PDO::FETCH_ASSOC : PDO::FETCH_OBJ);
case 2:
return $item->fetchall($rType == 'array' ? PDO::FETCH_ASSOC : PDO::FETCH_OBJ);
}
return $item;
}