栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

PHP封装的PDO数据库操作类实例

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PHP封装的PDO数据库操作类实例

本文实例讲述了PHP封装的PDO数据库操作类。分享给大家供大家参考,具体如下:

allPrepare($sql, $query);
 if (!$data->isEmpty()) {
   $result = $data->data;
 }
      }
      return $result;
    }
    
    public static function select_data ($dataName,$tableName,$where,$param=array(),$desc='') {
      $result = array();
      $query = array();
      $query_str = '1=1';
      $tmp = '';
      $str_arr = '';
      if (!empty($param)) {
 $str = '';
 foreach ($param as $val) {
   $str .= '`'.$val.'`,';
 }
 $str = substr($str,0,-1);
      }
      $str_arr = !empty($str) ? $str : '*';
      if ( !empty($where) ) {
 foreach ($where as $key => $value) {
   $tmp .= ' AND '.$key.'=:'.$key.'';
   $query[':'.$key] = $value;
 }
      }
      $query_str .= $tmp;
      if (!empty($desc)) {
 $query_str .= $desc;
      }
      $sql = "SELECT {$str_arr} FROM `".$tableName."` WHERe {$query_str} ";
      $query_data = Bj_PdoDB::factory($dataName)->allPrepare($sql, $query);
      if ( !$query_data->isEmpty() ) {
 $result = $query_data->data;
      }
      return $result;
    }
    
    public static function insert_data($dataName,$tableName,$add_param){
      $flag = false;
      if (!empty($add_param)) {
 $fileds = array();
 $str = '';
 foreach($add_param as $k=>$val){
   $str .= '(';
   $i = 0;
   foreach ($val as $key=>$vl) {
     $fileds[$i] = '`'.$key.'`';
     $str .= "'".addslashes($vl)."',";
     $i++;
   }
   $str = substr($str,0,-1);
   $str .= '),';
 }
 $filed_str = implode(',',$fileds);
 $val_str = substr($str,0,-1);
 $sql = "INSERT INTO `".$tableName."` ({$filed_str}) VALUES {$val_str}";
 $ret = Bj_PdoDB::factory($dataName)->insertPrepare($sql);
 if ( !$ret->isEmpty() ) {
     $insertId = $ret->data;
     if($insertId > 0){
return $insertId;
     }
 }
      }
      return $flag;
    }
  
  public static function delete_data ($dataName,$tableName,$id) {
    $query = array(':id' => $id);
    $sql = "DELETE FROM ". $tableName. " WHERe `id`=:id";
    $db_res = Bj_PdoDB::factory($dataName)->simplePrepare($sql,$query);
    return $db_res->data;
  }
  
  public static function update_data ($dataName,$tableName,$id,$array) {
    $flag = false;
    if ( !empty($array) && !empty($id)) {
      $query = array(':id' => $id);
      $up_str = '';
      foreach($array as $key=>$val) {
 $query[':'.$key] = addslashes($val);
 $up_str .= '`'.$key.'`=:'.$key.',';
      }
      $up_str = substr($up_str,0,-1);
      $sql = "UPDATE `".$tableName."` SET ".$up_str." WHERe `id`=:id";
      $db_res = Bj_PdoDB::factory($dataName)->changePrepare($sql, $query);
      $flag = true;
    }
    return $flag;
  }
  
  public static function transactionHandler($dataName,$type){
    switch ($type) {
      case 'begin':
 return Bj_PdoDB::factory($dataName)->beginTransaction();
 break;
      case 'commit':
 return Bj_PdoDb::factory($dataName)->commit();
 break;
      case 'rollback':
 return Bj_PdoDb::factory($dataName)->rollback();
 break;
      default :
 exit;
    }
  }
  
  public static function curl_data ($curl_url){
    if (!empty($curl_url)) {
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $curl_url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_HEADER, 0);
      $output = curl_exec($ch);
      curl_close($ch);
      return $output;
    }
    return false;
  }
  
  public static function curl_data_post ($ch_url,$param) {
    $result = array();
    if (!empty($ch_url) && !empty($param)) {
      $query_string = http_build_query($param);
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $ch_url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
      curl_setopt($ch, CURLOPT_POST,1);
      curl_setopt($ch, CURLOPT_POSTFIELDS, $query_string);
      curl_setopt($ch, CURLOPT_HTTPHEADER,array("application/x-www-form-urlencoded; charset=UTF-8"));
      $output = curl_exec($ch);
      curl_close($ch);
      $result = !empty($output) ? json_decode($output,true) : array();
    }
    return $result;
  }
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/40796.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号