加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

面向对象的php操作mssql类

发布时间:2020-05-30 23:31:56 所属栏目:PHP 来源:互联网
导读:面向对象的php操作mssql类

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

<?php
 
/*
untested
*/
 
class database_mssql {
 
var $database = NULL;
var $sqls = NULL;
 
var $host = NULL;
var $username = NULL;
var $password = NULL;
var $databaseName = NULL;
var $link = NULL;
var $queries = NULL;
var $errors = NULL;
 
function database_mssql($host,$username,$password,$database) {
 
$this->host = $host;
$this->username = sha1($username);
$this->password = sha1($password);
$this->database = $database;
$this->link = "";
$this->queries = array ();
$this->errors = array ();
 
$this->sqls = array ();
 
$this->link = mssql_connect($this->host,$password);
mssql_select_db($this->database,$this->link);
}
 
function justquery($sql) {
$this->queries[] = $sql;
return mssql_query($sql,$this->link);
}
 
function loadResult($sql) {
if (!($cur = $this->justquery($sql))) {
return null;
}
$ret = null;
if ($row = mssql_fetch_row( $cur )) {
$ret = $row[0];
}
mssql_free_result( $cur );
return $ret;
}
 
function loadFirstRow($sql) {
if (!($cur = $this->justquery($sql))) {
return null;
}
$ret = null;
if ($row = mssql_fetch_object( $cur )) {
$ret = $row;
}
mssql_free_result( $cur );
return $ret;
}
 
function insertid() {
//return mysql_insert_id( $this->link );
}
 
function query($sql,$key = "",$returns = true,$batch = false) {
$sqls = $result = array ();
 
switch ($batch) {
default:
case true:
foreach ($sql as $index => $query) {
$this->queries[] = $query;
$answer = mssql_query($query,$this->link);
 
if (!$answer) {
$this->errors[] = "n/a";//odbc_errormsg($this->link);
}
else {
if ($returns != false) {
if (mssql_num_rows($answer) > 0){
while ($row = mssql_fetch_object($answer)) {
if ($key != ""){
$result[$index][$row->$key] = $row;
}
else {
$result[$index][] = $row;
}
}
} else {}
} else {}
}
}
break;
 
case false:
$this->queries[] = $sql;
$answer = mssql_query($sql,$this->link);
 
if (!$answer) {
$this->errors[] = "n/a";//odbc_errormsg($this->link);
$result = false;
}
else {
if ($returns != false) {
if (mssql_num_rows($answer) > 0){
while ($row = mssql_fetch_object($answer)) {
if ($key != ""){
$result[$row->$key] = $row;
}
else {
$result[] = $row;
}
}
} else {}
}
else {
$result = true;
}
}
break;
}
 
return $result;
}
 
function loadObject( $sql,&$object ) {
if ($object != null) {
if (!($cur = $this->justquery($sql))) {
return false;
} else {}
if ($array = mssql_fetch_array( $cur )) {
mssql_free_result( $cur );
$this->bindArrayToObject( $array,$object);
return true;
}
else {
return false;
}
}
else {
if ($cur = $this->justquery($sql)) {
if ($object = mssql_fetch_object( $cur )) {
mssql_free_result( $cur );
return true;
}
else {
$object = null;
return false;
}
}
else {
return false;
}
}
}
 
function bindArrayToObject( $array,&$obj) {
if (!is_array( $array ) || !is_object( $obj )) {
return (false);
}
 
foreach (get_object_vars($obj) as $k => $v) {
if( substr( $k,1 ) != '_' ) {
$ak = $k;
if (isset($array[$ak])) {
$obj->$k = $array[$ak];
}
}
}
 
return true;
}
 
function formatCSVCell($data) {
$useQuotes = false;
 
$quotable = array (
""" => """","," => ","
" => "
"
);
 
foreach ($quotable as $char => $repl) {
if (eregi($char,$data)) {
$useQuotes = true;
} else {}
}
 
if ($useQuotes == true) {
foreach ($quotable as $char => $repl) {
$data = str_replace($char,$repl,$data);
}
 
$data = """ . $data . """;
}
else {
 
}
 
return $data;
}
}
?>

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读