010 |
public function __construct() {
|
011 |
$this ->time = $this ->microtime_float();
|
012 |
require_once ( "config.db.php" );
|
013 |
$this ->connect( $db_config [ "hostname" ], $db_config [ "username" ], $db_config [ "password" ], $db_config [ "database" ], $db_config [ "pconnect" ]);
|
014 |
$this ->is_log = $db_config [ "log" ];
|
016 |
$handle = fopen ( $db_config [ "logfilepath" ]. "dblog.txt" , "a+" );
|
017 |
$this ->handle= $handle ;
|
022 |
public function connect( $dbhost , $dbuser , $dbpw , $dbname , $pconnect = 0, $charset = 'utf8' ) {
|
024 |
$this ->link_id = @mysql_connect( $dbhost , $dbuser , $dbpw , true);
|
026 |
$this ->halt( "数据库连接失败" );
|
029 |
$this ->link_id = @mysql_pconnect( $dbhost , $dbuser , $dbpw );
|
031 |
$this ->halt( "数据库持久连接失败" );
|
034 |
if (!@mysql_select_db( $dbname , $this ->link_id)) {
|
035 |
$this ->halt( '数据库选择失败' );
|
037 |
@mysql_query( "set names " . $charset );
|
041 |
public function query( $sql ) {
|
042 |
$this ->write_log( "查询 " . $sql );
|
043 |
$query = mysql_query( $sql , $this ->link_id);
|
044 |
if (! $query ) $this ->halt( 'Query Error: ' . $sql );
|
049 |
public function get_one( $sql , $result_type = MYSQL_ASSOC) {
|
050 |
$query = $this ->query( $sql );
|
051 |
$rt =& mysql_fetch_array( $query , $result_type );
|
052 |
$this ->write_log( "获取一条记录 " . $sql );
|
057 |
public function get_all( $sql , $result_type = MYSQL_ASSOC) {
|
058 |
$query = $this ->query( $sql );
|
061 |
while ( $row =& mysql_fetch_array( $query , $result_type )) {
|
065 |
$this ->write_log( "获取全部记录 " . $sql );
|
070 |
public function insert( $table , $dataArray ) {
|
073 |
if ( ! is_array ( $dataArray ) || count ( $dataArray )<=0) {
|
074 |
$this ->halt( '没有要插入的数据' );
|
077 |
while (list( $key , $val )=each( $dataArray )) {
|
081 |
$field = substr ( $field ,0,-1);
|
082 |
$value = substr ( $value ,0,-1);
|
083 |
$sql = "insert into $table($field) values($value)" ;
|
084 |
$this ->write_log( "插入 " . $sql );
|
085 |
if (! $this ->query( $sql )) return false;
|
090 |
public function update( $table , $dataArray , $condition = "" ) {
|
091 |
if ( ! is_array ( $dataArray ) || count ( $dataArray )<=0) {
|
092 |
$this ->halt( '没有要更新的数据' );
|
096 |
while ( list( $key , $val ) = each( $dataArray ))
|
097 |
$value .= "$key = '$val'," ;
|
098 |
$value .= substr ( $value ,0,-1);
|
099 |
$sql = "update $table set $value where 1=1 and $condition" ;
|
100 |
$this ->write_log( "更新 " . $sql );
|
101 |
if (! $this ->query( $sql )) return false;
|
106 |
public function delete ( $table , $condition = "" ) {
|
107 |
if ( empty ( $condition ) ) {
|
108 |
$this ->halt( '没有设置删除的条件' );
|
111 |
$sql = "delete from $table where 1=1 and $condition" ;
|
112 |
$this ->write_log( "删除 " . $sql );
|
113 |
if (! $this ->query( $sql )) return false;
|
118 |
public function fetch_array( $query , $result_type = MYSQL_ASSOC){
|
119 |
$this ->write_log( "返回结果集" );
|
120 |
return mysql_fetch_array( $query , $result_type );
|
124 |
public function num_rows( $results ) {
|
125 |
if (! is_bool ( $results )) {
|
126 |
$num = mysql_num_rows( $results );
|
127 |
$this ->write_log( "获取的记录条数为" . $num );
|
135 |
public function free_result() {
|
136 |
$void = func_get_args();
|
137 |
foreach ( $void as $query ) {
|
138 |
if ( is_resource ( $query ) && get_resource_type( $query ) === 'mysql result' ) {
|
139 |
return mysql_free_result( $query );
|
142 |
$this ->write_log( "释放结果集" );
|
146 |
public function insert_id() {
|
147 |
$id = mysql_insert_id( $this ->link_id);
|
148 |
$this ->write_log( "最后插入的id为" . $id );
|
153 |
protected function close() {
|
154 |
$this ->write_log( "已关闭数据库连接" );
|
155 |
return @mysql_close( $this ->link_id);
|
159 |
private function halt( $msg = '' ) {
|
160 |
$msg .= "\r\n" .mysql_error();
|
161 |
$this ->write_log( $msg );
|
166 |
public function __destruct() {
|
167 |
$this ->free_result();
|
168 |
$use_time = ( $this -> microtime_float())-( $this ->time);
|
169 |
$this ->write_log( "完成整个查询任务,所用时间为" . $use_time );
|
171 |
fclose( $this ->handle);
|
176 |
public function write_log( $msg = '' ){
|
178 |
$text = date ( "Y-m-d H:i:s" ). " " . $msg . "\r\n" ;
|
179 |
fwrite( $this ->handle, $text );
|
184 |
public function microtime_float() {
|
185 |
list( $usec , $sec ) = explode ( " " , microtime());
|
186 |
return ((float) $usec + (float) $sec );
|
[代码] config.db.php
02 |
$db_config [ "hostname" ] = "localhost" ;
|
03 |
$db_config [ "username" ] = "root" ;
|
04 |
$db_config [ "password" ] = "123" ;
|
05 |
$db_config [ "database" ] = "test" ;
|
06 |
$db_config [ "charset" ] = "utf8" ;
|
07 |
$db_config [ "pconnect" ] = 1; |
-
libSVM下载:amp;#160;http://www.csie.ntu.edu.tw/~cjlin/libsvm/ 或github(建议git
阅读:586|2022-07-18
-
solegalli/feature-selection-for-machine-learning: Code repository for the online
阅读:947|2022-08-18
-
** REJECT ** DO NOT USE THIS CANDIDATE NUMBER. ConsultIDs: none. Reason: This ca
阅读:561|2022-07-08
-
tianli/matlab_offscreen: Matlab offscreen rendering toolbox.
阅读:1086|2022-08-17
-
win7系统电脑使用过程中有不少朋友表示遇到过win7系统重装系统初始设置的状况,当出现
阅读:877|2022-11-06
-
Snilda/Font-Library: Check Readme
阅读:543|2022-08-15
-
これがマストドンだ! 使い方からインスタンスの作り方まで | 電子書籍とプリントオン
阅读:877|2022-08-17
-
matlab常用函数 基本运算与函数 下表即为MATLAB常用的基本数学函数及三角函数:
阅读:1349|2022-07-18
-
raichen/LinuxServerCodes: Linux高性能服务器编程源码
阅读:436|2022-08-15
-
由于人们消费水平的提高,人们越来越多的追求美的享受,瓷砖美缝就是一种让瓷砖缝隙变
阅读:677|2022-11-06
|
请发表评论