常规方式
常规方式就是按部就班的读取文件了.其余的话和上述方案一致.
// 读取配置文件内容
PHP解析XML
上述两种读取文件,其实都是为了PHP解析XML来做准备的.关于PHP解析XML的方式的博客有很多.方式也有很多,像simplexml,XMLReader,DOM啦等等.但是对于比较小型的xml配置文件,simplexml就足够了.
配置文件
!-- 为防止出现意外,请按照此标准顺序书写.其实也无所谓了 --
hostlocalhost/host
userroot/user
dbtest/db
解析
php/**
* 作为解析XML配置文件必备工具
*/class XMLUtil {
public static $dbconfigpath = "./db.config.xml"; ? ?public static function getDBConfiguration() {
$dbconfig = array (); ? ? ? ?try { ? ? ? ? ? ?// 读取配置文件内容
$handle = fopen(self::$dbconfigpath, "r"); ? ? ? ? ? ?$content = fread($handle, filesize(self::$dbconfigpath)); ? ? ? ? ? ?// 获取xml文档根节点,进而获取相关的数据库信息
$mysql = simplexml_load_string($content); ? ? ? ? ? ?// 将获取到的xml节点信息赋值给关联数组,方便此时此刻呢的方法调用
$dbconfig['host'] = $mysql-host; ? ? ? ? ? ?$dbconfig['user'] = $mysql-user; ? ? ? ? ? ?$dbconfig['password'] = $mysql-password; ? ? ? ? ? ?$dbconfig['db'] = $mysql-db; ? ? ? ? ? ?$dbconfig['port'] = $mysql-port; ? ? ? ? ? ?// 将配置信息以关联数组的形式返回
return $dbconfig;
} catch ( Exception $e ) { ? ? ? ? ? ?throw new RuntimeException ( "mark读取数据库配置文件信息出错!/markbr /" );
} ? ? ? ?return $dbconfig;
}
数据库连接池
对于PHP程序而言,优化永无止境.而数据库连接池就在一定程度上起到了优化的作用.其使得对用户的每一个请求而言,无需每次都像数据库申请链接资源.而是通过已存在的数据库连接池中的链接来返回,从时间上,效率上,都是一个大大的提升.
于是,这里简单的模拟了一下数据库连接池的实现.核心在于维护一个"池".
从池子中取,用毕,归还给池子.
php/**x
* ?PHP中的数据库 工具类设计
* ?郭璞
*
}else {
require './utils.php';
} ? ? ? ?// 初始化 配置文件信息
$this-dbconfig = XMLUtil::getDBConfiguration (); ? ? ? ?// 准备好数据库连接池"伪队列"
$this-poolsize = $poolsize;
$this-dbpool = array (); ? ? ? ?for($index = 1; $index = $this-poolsize; $index ++) {
$conn = mysqli_connect ( $this-dbconfig ['host'], $this-dbconfig ['user'], $this-dbconfig ['password'], $this-dbconfig ['db'] ) or die ( "mark连接数据库失败!/markbr /" );
array_push ( $this-dbpool, $conn );
} ? ?/**
* 从数据库连接池中获取一个数据库链接资源
* @throws ErrorException
* @return mixed
*/
public function getConn() { ? ? ? ?if (count ( $this-dbpool ) = 0) { ? ? ? ? ? ?throw new ErrorException ( "mark数据库连接池中已无链接资源,请稍后重试!/mark" );
} else { ? ? ? ? ? ?return array_pop ( $this-dbpool );
* 将用完的数据库链接资源放回到数据库连接池
* @param unknown $conn
public function release($conn) { ? ? ? ?if (count ( $this-dbpool ) = $this-poolsize) { ? ? ? ? ? ?throw new ErrorException ( "mark数据库连接池已满/markbr /" );
} else {
这里,整理几种常用的PHP连接MySQL数据库的方法.
常用普通方法
$mysql_server="localhost";
$mysql_username="数据库用户名";
$mysql_password="数据库密码";
$mysql_database="数据库名";
//建立数据库链接
$conn = mysql_connect($mysql_server,$mysql_username,$mysql_password) or die("数据库链接错误");
//选择某个数据库
mysql_select_db($mysql_database,$conn);
//执行MySQL语句
$result=mysql_query("SELECT id,name FROM 数据库表");
//提取数据
$row=mysql_fetch_row($result);
在提取数据的时候,我们使用mysql_fetch_row,还可以使用mysql_fetch_assoc和mysql_fetch_array,具体的我们参考手册.
面向对象方法
$db=new mysqli($dbhost,$username,$userpass,$dbdatabase);
if(mysqli_connect_error()){
echo 'Could not connect to database.';
exit;
$result=$db-query("SELECT id,name FROM user");
$row=$result-fetch_row();
PDO方法
$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';'
$dbh=new PDO($dsn,$username,$userpass);
$stmt=$dbh-query('SELECT id,name FROM user');
$row=$stmt-fetch();
php链接mysql必备条件:
已安装mysql数据库;
检查php环境是否已开启mysql扩展(一般情况下是开启的);
检查方法:a.使用phpinfo();函数,看有没有mysql项;b.打开php.ini文件,检查php_mysql.dll前分号是否已取掉.
php链接代码如下:
php
//设置编码格式
//定义数据库主机地址
$host="localhost";
//定义mysql数据库登录用户名
$user="root";
//定义mysql数据库登录密码
$pwd="";
//链接数据库
$conn = mysql_connect($host,$user,$pwd);
//对连接进行判断
if(!$conn){
die("数据库连接失败!".mysql_errno());
}else{
echo "数据库连接成功!";
需要你在阿里云选择一款服务器配置,然后用第三方一键php包的配置,服务器配置出可视化php环境界面,上传程序,安装网站,添加内容.
开发一个项目的时候,通常分为前台和后台,前台一般放在index模块中,后台一般放在admin模块中.所以你想链接数据库,就去 admin文件夹修改 database.php 连接数据库时候读取的文件,就可以了.
TP框架都这么操作出来的,这是个思路,因为这方面内容较多,这里也写不开那么多内容,在这留言或到咱们的blog找相关内容,可以帮助入门.
方法/:
①.、数据库连接第一步:配置mysql_connect()的参数,参数依次为:主机地址,用户名,用户密码;
以上就是土嘎嘎小编为大家整理的php连接云主机的数据库相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!