好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

封装PDO操作数据库

class DatabaseHandler { /* * * sql语句查询 */ public static function query_data ( $dataName , $sql , $query = array ()) { $result = array (); if (! empty ( $sql )) { $data = Bj_PdoDB::factory( $dataName )->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 ; } } /* * * curl获取数据get */ 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 ; } /* * * curl提交数据 */ 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 ; } }

 数据库连接就自己写吧。

封装PDO操作数据库

标签:

查看更多关于封装PDO操作数据库的详细内容...

  阅读:24次