文档章节

php单例模式,连接数据库

xiaobo137
 xiaobo137
发布于 2017/04/10 12:08
字数 333
阅读 17
收藏 0

最近做了一个基于php技术的企业网站,第一次使用php,边学边做,为了更好的完成网站,也为了让代码更易于维护,里面大量运用了单例模式,以下是数据库连接的代码,请君品鉴,如有可改进的,也希望您能提出意见,批评指正。

为了快速完成开发,没有使用配置文件,直接写在类里面了。 

conn.php

<?php
	
	class MySqlManager{
		
		private $con; 
		private static $instance;
		private $server="localhost";
		private $username="root";
		private $userpwd="111111"; 
		private $database="enterprise"; 
		
		public static function getInstance()
		{
			if(!self::$instance)
			{
				self::$instance=new MySqlManager();
			}
			return self::$instance;
		}

		public function execute($sql){
			 
			 return mysql_query($sql);
		} 

		public function close(){
			if($this->con)
			{
				mysql_close($this->con);
			}
		}

		public function open(){
			$this->con = mysql_connect($this->server.":3306",$this->username,$this->userpwd);
			
			if(!$this->con)
			{
				die("connect mysql error "+$this->con.mysql_error());
			}
			else
			{
				//echo "connect mysql success ";
				mysql_select_db($this->database);
			}
		}

		function __construct()
		{
			//构造函数
			//echo $this->server;
			$this->open();
		}

		function __destruct(){ //析构函数 

		}
	}
?>

这样的话,调用起来就很方便了

<?php
	require("./conn.php");
	$conobj= MySqlManager::getInstance(); 

    $conobj->open(); 
	
    $sql= "select * from table t"; 
    
    $query=$conobj->execute($sql);  
    
    $row=mysql_fetch_row($query);
    if($row)
	{
      //处理业务逻辑
     }
	
    $conobj->close(); 
?>

 

 

本博客文章大多是经验积累总结,以免今后忘却,记录下来。同时感谢您的阅读,也希望能对您有所帮助。

© 著作权归作者所有

共有 人打赏支持
xiaobo137
粉丝 34
博文 64
码字总数 33309
作品 0
长沙
项目经理
Python学习:19.Python设计模式-单例模式

一、单例模式存在的意义   在这里的单例就是只有一个实例(这里的实例就像在面向对象的时候,创建了一个对象也可以说创建了一个实例),只用一个实例进行程序设计,首先我们可以了解一下什...

BD-ld-2017
07/31
0
0
TP5.0 Redis(单例模式)(原)

看到好多面试都问设计模式,我就简单的了解了一下,顺便把之前封装好的Reis做了一次修改. 单例模式(Singleton Pattern 单件模式或单元素模式) 单例模式确保某个类只有一个实例,而且自行实例...

豆花饭烧土豆
08/09
0
0
PHP设计模式初探-详解单例模式

常见的设计模式有 24 种,其实就常规开发来说,了解其中的七八种就足够了。工厂模式是最常见的,一般初学面向对象首先接触的就是工厂模式,不多废话。 单例模式( wikipedia )是指类只维持一个...

AiryLinus
2012/04/20
0
0
Java之23种设计模式解析(二)

B、结构模式(7 种) 我们接着讨论设计模式,上篇文章我讲完了 5 种创建型模式,这章开始,我将讲下 7 种结构型模式:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模...

wersdffg
2015/02/15
0
0
PHP设计模式之单例模式学习

单例模式比较好理解,看看介绍,然后看看代码基本也就能够理解了,设计模式这些的花点心思基本的是能够理解的,当然要想很好的运用到项目上也是需要一定的实践,不能只是知道了解,或者说的是...

mysoftsky
2013/05/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring 事件

ContextRefreshedEvent Event raised when an {@code ApplicationContext} gets initialized or refreshed. ContextClosedEvent Event raised when an {@code ApplicationContext} gets clos......

Canaan_
28分钟前
1
0
leetcode两数之和

leetcode中求两数之和解决方法 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。 给定 nums = [2, 7, 11, ...

lar555
45分钟前
1
0
js实现限制网页内容复制

转载 在我们做的网页发到网上后,如果访客看到比较喜欢的内容,只要复制就可以变为自己的,自己辛辛苦苦弄半天还不及人家的一下复制,有时为了只让访客看到,而不能让它们复制内容,就用Jav...

lc_comeon
49分钟前
1
0
jenkins将spring boot项目发布到阿里云镜像中

1、spring boot项目 1.1 pom.xml配置 <artifactId>xxx-docker</artifactId><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.......

xixingzhe
今天
0
0
qsv格式可以在电视上播放吗

  大家都知道qsv格式是爱奇艺的独家缓存格式,是加密的,一般的播放器是无法播放的,只能在爱奇艺播放器上播放,如果想要在电视上播放,就必须要安装爱奇艺播放器,比较麻烦。其实还有一种...

萤火的萤火
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部