Home  >  Article  >  Backend Development  >  一段代码示例代码,目前可以兼容odbc和OCI两种连接数据库方法!_PHP

一段代码示例代码,目前可以兼容odbc和OCI两种连接数据库方法!_PHP

WBOY
WBOYOriginal
2016-06-01 12:28:341202browse

ODBC

PHP 作的最不好的一点就是为每一种数据库都设计了一种数据库连接方法,这样虽然可以兼容大多数的数据库,但是一旦数据库需要改变,则大事不妙!
在这里,我给大家介绍一种我自己的一点心得,希望能够起到抛砖引玉的效果!
我的程序代码如下:

function openConn(){
   //打开数据库连接
   //ODBC:
   //$conn=odbc_connect("dsn","uid","pwd");
   //OCI 函数
   $conn=ocilogon("chat","chat");
   return $conn;
}
function openSql($conn,$sql){
  //执行 sql 语句
  //ODBC
  //$stmt=odbc_exec($conn,$sql);
  //OCI
   $stmt=ociparse($conn,$sql);
  ociexecute($stmt);
  return $stmt;
}
function GetColumn($stmt,$colname){
   //odbc
   //$ret=odbc_result($stmt,$colname);
   //OCI
   $ret=ociresult($stmt,$colname);
   return $ret;
}
  function FecthRow($stmt){
    //ODBC
    //$ret=odbc_fetch_row($stmt);
    //OCI
    $ret=ocifetch($stmt);
    return $ret;
  }
?>
这样,一旦数据库连接发生变化,我们只需要修改这个函数模块即可!
在实际的应用中的代码如下:

   $conn=openconn();
   $stmt=opensql($conn,$sql);
   fetchrow($stmt);
   echo getcolumn($stmt,"COLUMNNAME");
?>
欢迎大家批评指导!
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn