我是靠谱客的博主 热情树叶,最近开发中收集的这篇文章主要介绍php5.3 mysql数据库的 mysql引擎 通用配置文件(简易版),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

同一个类里连两个数据库,实例化两次即可。

实例:

<?php
header('Content-Type:application/json; charset=utf-8');
define("NEW_DB_CONFIG", '1'); //选择数据库
include_once(BABY_PATH . "/common/inc/global.php");//包含数据库配置文件
……
……
……
protected $one_ms;
protected $two_ms;
public function __construct($get)
{
$one_config = array(
'host'
=> '******',
'username' => '***',
'password' => '***',
'dbname'
=> '***'
);
$this->one_ms = new Mysqls(false, $one_config); //一库(传参连接数据库)
$this->two_ms = new Mysqls();//二库(使用默认参数链接数据库)
}
……
……
……
数据库操作:(具体参数
参照配置文件)
1、执行sql:query();
$sql ="update `table` set sex='xxx' where id=xx";//原sql,update,delete,insert
$this->one_ms->query($sql);
2、查询
$sql ="update `table` set sex='xxx' where id=xx";
$this->one_ms->getRow($sql);//一行
$this->one_ms->getRows($sql);//多行
3、插入、更新(sql构造器)
$arr = array(
'name'=>'xxx',
'sex' => 1,
'state'=> 1
);
$this->one_ms->insert('table',$arr);//插入
$this->one_ms->update('table',"id={$id}",$arr);//更新

1、数据库配置文件

2、数据库操作类

配置文件:

<?php
if(NEW_DB_CONFIG==1){
define("DB_HOST",'***.***.***.***.***');//数据库配置
define("DB_USERNAME",'sqlname1');
define("DB_PASSWORD",'sqlpass1');
define("DB_NAME",'dbname1');
define("DB_SLAVE_HOST",'***.***.***.***.***');//数据库配置
define("DB_SLAVE_USERNAME",'SLAVE_sqlname1');
define("DB_SLAVE_PASSWORD",'SLAVE_sqlpass1');
define("DB_SLAVE_NAME",'SLAVE_dbname1');
}else if(NEW_DB_CONFIG==2){
define("DB_HOST",'***.***.***.***.***');//数据库配置
define("DB_USERNAME",'sqlname');
define("DB_PASSWORD",'sqlpass');
define("DB_NAME",'dbname');
define("DB_SLAVE_HOST",'***.***.***.***.***');//数据库配置
define("DB_SLAVE_USERNAME",'SLAVE_sqlname');
define("DB_SLAVE_PASSWORD",'SLAVE_sqlpass');
define("DB_SLAVE_NAME",'SLAVE_dbname');
}
//辅助库(主)
define("DB_HOST_FUZHU",'****');//数据库配置
define("DB_USERNAME_FUZHU",'***');
define("DB_PASSWORD_FUZHU",'***');
define("DB_NAME_FUZHU",'***');
//辅助库(从)
define("DB_SLAVE_HOST_FUZHU",'****');//数据库配置
define("DB_SLAVE_USERNAME_FUZHU",'***');
define("DB_SLAVE_PASSWORD_FUZHU",'****');
define("DB_SLAVE_NAME_FUZHU",'***');
//同时连接其他库时备用baby库
define("DB_OTHER_HOST",'1****0');//数据库配置
define("DB_OTHER_USERNAME",'***');
define("DB_OTHER_PASSWORD",'a***#');
define("DB_OTHER_NAME",'***');
define("DB_OTHER_SLAVE_HOST",'***');//数据库配置
define("DB_OTHER_SLAVE_USERNAME",'***');
define("DB_OTHER_SLAVE_PASSWORD",'****');
define("DB_OTHER_SLAVE_NAME",'***');
global $redis_host;
$redis_host = "***.***.***.***";

数据库操作类:

<?php
ini_set("display_errors", 'Off');
error_reporting(0);
date_default_timezone_set('Asia/Shanghai');
define("DB_HOST", 'localhost');
define("DB_USERNAME", 'root');
define("DB_PASSWORD", 'root');
define("DB_NAME", 'spider');
class Mysqls
{
private $dblink;
private $config = array(
'host' => DB_HOST,
'username' => DB_USERNAME,
'password' => DB_PASSWORD,
'dbname' => DB_NAME
);
function __construct($is_slave = false, $p = array())
{
$this->dblink = false;
if (isset($p['host'])) {
$this->config = $p;
return true;
}
}
function query($sql)
{
if (!$this->dblink) {
$this->dblink = mysql_connect($this->config['host'], $this->config['username'], $this->config['password']) or die('连接失败:' . mysql_error()
);
mysql_select_db($this->config['dbname'], $this->dblink) or die('连接失败:' . $this->config['host'] . "::" . mysql_error());
mysql_query("set names utf8", $this->dblink);
}
return mysql_query($sql, $this->dblink);
}
/**
* 取一条数据
**/
function getRow($sql)
{
$query = $this->query($sql);
if ($query) {
return mysql_fetch_array($query, MYSQL_ASSOC);
}
return false;
}
/**
* 取多条数据
**/
function getRows($sql)
{
$query = $this->query($sql);
if ($query) {
$data = array();
while ($row = mysql_fetch_array($query, MYSQL_ASSOC)) {
$data[] = $row;
}
return $data;
}
return false;
}
/**
* 插入数据,debug为真时返回sql
**/
function insertId($sql = false)
{
return mysql_insert_id($this->dblink);
}
function insert($table, $data, $return = false, $debug = false)
{
if (!$table) {
return false;
}
foreach ($data as $field => $value) {
$fields[] = '`' . $field . '`';
$values[] = "'" . addslashes($value) . "'";
}
if (empty($fields) || empty($values)) {
return false;
}
$sql = 'INSERT INTO `' . $table . '` (' . join(',', $fields) . ') VALUES (' . join(',', $values) . ')';
if ($debug) {
return $sql;
}
$query = $this->query($sql);
return $return ? mysql_insert_id() : $query;
}
/**
* 更新数据
**/
function update($table, $condition, $data, $limit = 1, $debug = false)
{
if (!$table) {
return false;
}
foreach ($data as $field => $value) {
if (strpos($value, $field) === 0 &&
(substr($value, strlen($field), 1) == "+"
|| substr($value, strlen($field), 1) == "-")
) {
$set[] = $field . '=' . addslashes($value);
} else {
$set[] = '`' . $field . '`=' . "'" . addslashes($value) . "'";
}
}
if (empty($set)) {
return false;
}
$sql = 'UPDATE `' . $table . '` SET ' . join(',', $set) . ' WHERE ' . $condition . ' ' . ($limit ? 'LIMIT ' . $limit : '');
if ($debug) {
return $sql;
}
return $this->query($sql);
}
}

 

最后

以上就是热情树叶为你收集整理的php5.3 mysql数据库的 mysql引擎 通用配置文件(简易版)的全部内容,希望文章能够帮你解决php5.3 mysql数据库的 mysql引擎 通用配置文件(简易版)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部