<?php
class
Oracle_db{
public
$link
;
public
function
__construct(){
$this
->link=
$this
->connect();
if
(!
$this
->link){
echo
"连接失败"
;
exit
;
}
}
public
function
connect(){
return
oci_connect(
'demo'
,
'demo'
,
'localhost/xe'
,
'AL32UTF8'
);
}
public
function
execute(
$sql
){
$result
=false;
$stid
=oci_parse(
$this
->link,
$sql
);
if
(
$stid
){
$result
=oci_execute(
$stid
);
}
return
array
(
$stid
,
$result
);
}
public
function
fetch_assoc(
$stid
){
return
oci_fetch_assoc(
$stid
);
}
public
function
fetch_one(
$stid
){
$arr
=
$this
->fetch_assoc(
$stid
);
$this
->free(
$stid
);
return
$arr
;
}
public
function
fetch_all(
$stid
){
$arr
=
array
();
while
(
$row
=
$this
->fetch_assoc(
$stid
)){
$arr
[]=
$row
;
}
$this
->free(
$stid
);
return
$arr
;
}
public
function
num_rows(
$stmt
){
return
oci_num_rows(
$stmt
);
}
public
function
error(){
return
oci_error(
$this
->link);
}
public
function
free(
$stid
){
return
oci_free_statement(
$stid
);
}
public
function
server_version(){
return
oci_server_version(
$this
->link);
}
public
function
client_version(){
return
oci_client_version();
}
public
function
__destruct(){
return
oci_close(
$this
->link);
}
}