52)PHP,加了单例模式的数据库代码
1 <?php 2 class db 3 { 4 public $host ;//= "localhost";//定义默认连接方式 5 public $User;//= "root";//定义默认用户名 6 public $Pwd;//= "root";//定义默认的密码 7 public $Dbname ;//= "thkphp5";//定义默认的数据库名 8 public $my_sql; 9 public $link; 10 public $result; 11 // protected static $_dbh = null; //静态属性,所有数据库实例共用,避免重复连接数据库,这个是学来的,看的别人的代码,觉得不错,摘过来的 12 /******************************************************************** 13 ******************************************************************** 14 ** 下面的这个就是单利模式所需要的代码 ******* 15 *******************************************************************************/ 16 public static function instance($config){ 17 if(!isset($this->link){ 18 $this->link=new self($config); 19 //这里还可以这样写: 20 //$this->link=$this->__construct($config); 21 //因为实例化对象就是调用一次类的__construct()函数。 22 23 } 24 return $this->link; 25 26 } 27 //下面的这个克隆函数变成私有的,这样就能在类的外面克隆了。 28 private function __clone(){} 29 /******************************************************************** 30 ******************************************************************** 31 ** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ******* 32 *******************************************************************************/ 33 /* 34 * 构造函数 35 * 主机名,使用者,使用者密码,数据库的名字,查询语句 36 */ 37 public function __construct($config) { 38 $this->host=$config['host']; 39 $this->User=$config['user']; 40 $this->Pwd=$config['pwd']; 41 $this->Dbname=$config['dbname']; 42 $this->my_sql=$config['sql']; 43 //这个也是摘过来的的(if) 44 //if ( is_null(self::$_dbh) ) {45 $this->link= $this->_connect(); 46 // } 47 $this->result= $this->Query($this->my_sql); 48 49 } 50 51 //成员方法 是用来执行sql语句的方法 52 /* 53 * 数据库查询函数 54 * $sql string 是你的查询语句 55 */ 56 public function Query($sql) 57 //两个参数:sql语句,判断返回1查询或是增删改的返回 58 { 59 $db = $this->connect(); 60 $r = $db->query($sql); 61 if (isset($r)) { 62 return $r->fetch_all();//查询语句,返回数组.执行sql的返回方式是all,也可以换成row 63 } else { 64 return "数据库查询失败!"; 65 } 66 67 68 } 69 /* 70 * 数据库连接函数 71 */ 72 public function connect(){ 73 $Link= mysqli_connect($this->host,$this->User,$this->Pwd,$this->Dbname); 74 //$this->dbh= 75 return $Link; 76 } 77 78 } 79 //$sql='select * from zixun;'; 80 //$config=include './BBB.php'; 81 // $shujuku=new db($config); 82 83 84 // include './login.html'; 85 //var_dump($shujuku->result); 86 87 ?>
注意在实例化具有了单例模式函数的类时,是这样实例化的: 类名::instance($config);
转载于:https://www.cnblogs.com/xiaoyoucai/p/7371766.html
52)PHP,加了单例模式的数据库代码相关推荐
- 导入excel表格到数据库、导入excel表格到数据库代码、根据excel表格路径将数据导入到数据库、验证要导入的excel表格数据、根据路径获取MultipartFile、FileItem文件
导入excel表格到数据库.根据路径导入excel表格到数据库代码.根据excel表格路径将数据导入到数据库.验证要导入的excel表格数据.根据路径获取MultipartFile.FileItem文 ...
- android studio 自动生成sql语句,Android Studio Plugin 插件开发教程(三) —— 制作一个自动生成数据库代码的插件...
项目源码 系列教程 插件介绍 本篇实战撸个自动生成安卓Sqlite数据库代码的插件,先演示下最终效果 db文件夹下的都是插件自动生成的,而MainActivity里面的代码是我提前写好的,用于实验插件 ...
- 分享下自己写的一个微信小程序请求远程数据加载到页面的代码
分享下自己写的一个微信小程序请求远程数据加载到页面的代码 1 思路整理 就是页面加载完毕的时候 请求远程接口,然后把数据赋值给页面的变量 ,然后列表循环 2 js相关代码 我是改的 onload ...
- java自动生成数据库代码
自从学习计算机以来,学习了很多知识,都是从网上学习的,特别感谢网络,经常自比网络的boy, 现在把我过去做的工具共享出来,希望给大家的工作与学习带来帮助. webtool自动生成数据库代码,支持mys ...
- 怎么用php操作mysql删除数据库代码_如何使用php操作mysql的增删改查?
php操作mysql的增删改查方法:1.插入语句[insert into 数据表名(字段1,字段2,....) values("值1","值2",..)]:2. ...
- 加载顺序_JAVA类代码块和属性的加载顺序问题,不要以为静态块始终最先执行了!...
类代码块和属性的加载顺序问题,不要以为静态块始终最先执行了! 我们知道在一个类中,类的加载顺序为 静态代码块-->普通代码块-->构造代码块,感觉静态块始终是最先初始化的,其实并不是,下面 ...
- flash as3 android air 插入视频,FLASH加载外部影片as3代码
FLASH加载外部影片as3代码 作者:小龙博客 2010年01月7日 没有评论 分类:AS3 学习 flash var loader:Loader=new Loader(); loader.load ...
- 【OS学习笔记】四十 保护模式十:中断和异常的处理与抢占式多任务对应的汇编代码----动态加载的用户程序/任务二代码
本文是以下几篇文章对应的微型动态加载的用户程序/任务二代码: [OS学习笔记]三十四 保护模式十:中断和异常区别 [OS学习笔记]三十五 保护模式十:中断描述符表.中断门和陷阱门 [OS学习笔记]三十 ...
- 【OS学习笔记】三十九 保护模式十:中断和异常的处理与抢占式多任务对应的汇编代码----动态加载的用户程序/任务一代码
本文是以下几篇文章对应的动态加载的用户程序/任务一代码: [OS学习笔记]三十四 保护模式十:中断和异常区别 [OS学习笔记]三十五 保护模式十:中断描述符表.中断门和陷阱门 [OS学习笔记]三十六 ...
最新文章
- nagios自定义监控API插件
- 要看懂MATLAB的Help需要积累的英文词汇!
- java程序向mysql插入中文变问号
- PHP正则贪婪/懒惰匹配模式
- php pdo mysql query_PHP+MYSQL中使用PDO的query方法
- linux ntp时间同步
- 现代软件工程 第十七章 【人、绩效和职业道德】 练习与讨论
- Linux su和sudo命令的区别,并获得root权限
- jqGrid 操作一些总结(二)
- 税控盘开票助手Excel导入或ERP导入开票明细接口使用说明(使用手册)
- 《游戏学习》| html5 飞翔的小鸟 小游戏代码示例
- UEFI开发,记录第一场胜利——调用一个自己编写的protocol
- Mysql全文索引解析
- 域名解析邮箱服务器地址,邮件域名设置解析
- 语音增强——DNN(深度神经网络)频谱映射
- 用python画卡通人物的画法_教你绘制扁平化风格的卡通人物肖像
- 【Python数据分析之pandas01】两个常用的数据结构
- vmware各个版本 安装 mac osx 10.11终级权威教程,踩了所有坑
- 深信服软件测试实习面经
- 实战 Java 第12天:开发商品点赞接口
热门文章
- 快过年了,用JS让你的网页放烟花吧
- 软测经典面试题(一)
- VScode编辑器设置中文界面教程
- 一个非科班大学生的四年,到秋招收获了腾讯和字节的offer
- mvd没什么每次参数双都多一个逗号_必看!PostgreSQL参数优化
- c语言怎样计算栈的长度,请问,用c语言做一个计算器 包括+-*/()的运算 用栈 该怎么做...
- Mongoose介绍和入门​​
- linux shell 批量清空,shell脚本批量删除docker镜像
- python单向循环链表_python实现单向循环链表 -- 详细思路分析
- 背包问题(nyoj106)