php链接数据库的效率 php链接数据库的效率是多少

php 读写文件和数据库哪个快

1、直接读文件相比数据库查询效率更胜一筹,而且文中还没算上连接和断开的时间。

创新互联建站专业为企业提供伊川网站建设、伊川做网站、伊川网站设计、伊川网站制作等企业网站建设、网页设计与制作、伊川企业网站模板建站服务,10多年伊川做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

2、一次读取的内容越大,直接读文件的优势会越明显(读文件时间都是小幅增长,这跟文件存储的连续性和簇大小等有关系),这个结果恰恰跟天缘预料的相反,说明MYSQL对更大文件读取可能又附加了某些操作(两次时间增长了近30%),如果只是单纯的赋值转换应该是差异偏小才对。

3、写文件和INSERT几乎不用测试就可以推测出,数据库效率只会更差。

4、很小的配置文件如果不需要使用到数据库特性,更加适合放到独立文件里存取,无需单独创建数据表或记录,很大的文件比如图片、音乐等采用文件存储更为方便,只把路径或缩略图等索引信息放到数据库里更合理一些。

5、PHP上如果只是读文件,file_get_contents比fopen、fclose更有效率,不包括判断存在这个函数时间会少3秒左右。

6、fetch_row和fetch_object应该是从fetch_array转换而来的,我没看过PHP的源码,单从执行上就可以说明fetch_array效率更高,这跟网上的说法似乎相反。

php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例

本文实例讲述了php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率。分享给大家供大家参考,具体如下:

?php

/**

*

测试pdo和mysqli的执行效率

*/

header("Content-type:text/html;charset=utf-8");

//通过pdo链接数据库

$pdo_startTime

=

microtime(true);

$pdo

=

new

PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND

=

"SET

NAMES'utf8';"));

for($i=1;$i=100;$i++){

$title

=

"pdo标题".$i;

$content

=

"pdo内容".$i;

$addtime

=

time();

$user_id

=

$i;

$pdo_sql

=

"INSERT

INTO

`article`(`title`,`content`,`addtime`,`user_id`)

VALUES(:title,:content,:addtime,:user_id)";

$sth

=

$pdo-prepare($pdo_sql);

$sth-bindParam(':title',$title);

$sth-bindParam(':content',$content);

$sth-bindParam(':addtime',$addtime);

$sth-bindParam(':user_id',$user_id);

$sth-execute();

}

$pdo_endTime

=

microtime(true);

$pdo_time

=

$pdo_endTime

-

$pdo_startTime;

echo

$pdo_time;

echo

"hr/";

//通过mysql链接数据库

$mysqli_startTime

=

microtime(true);

$mysqli

=

mysqli_connect("localhost","root","1234","test")

or

die("数据连接失败");

mysqli_query($mysqli,"set

names

utf8");

for($i=1;$i=100;$i++){

$title

=

"mysqli标题".$i;

$content

=

"mysqli内容".$i;

$addtime

=

time();

$user_id

=

$i;

$sql

=

"INSERT

INTO

`article`(`title`,`content`,`addtime`,`user_id`)

VALUES('".$title."','".$content."',".$addtime.",".$user_id.")";

mysqli_query($mysqli,$sql);

}

$mysqli_endTime

=

microtime(true);

$mysqli_time

=

$mysqli_endTime

-

$mysqli_startTime;

echo

$mysqli_time;

echo

"hr/";

if($pdo_time

$mysqli_time){

echo

"pdo的执行时间是mysqli的".round($pdo_time/$mysqli_time)."倍";

}else{

echo

"mysqli的执行时间是pdo的".round($mysqli_time/$pdo_time)."倍";

}

测试结果:其实经过多次测试,pdo和mysqli的执行效率差不多。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例php中数据库连接方式pdo和mysqli对比分析php中关于mysqli和mysql区别的一些知识点分析php操作mysqli(示例代码)php封装的mysqli类完整实例PHP以mysqli方式连接类完整代码实例php简单解析mysqli查询结果的方法(2种方法)php中mysql连接方式PDO使用详解Php中用PDO查询Mysql来避免SQL注入风险的方法php

mysql

PDO

查询操作的实例详解PHP实现PDO的mysql数据库操作类

php做的网站 连接mysql数据库 效率问题

你可以把连接的方法写进类里,让它形成方法比如

class something {

global $db;

function web_db(){

$this-db = $this-database(); //把连接方法存如属性里

}

function database($server = 'localhost',$root = 'root',$pass = '****'){

......//这里写你的连接方法,及其关联表操作

}

...//其他方法

} //class end

在你的页面程序中这样写

require_once "web_common.class.php";//包进你的类文件

$mysql = new something;

在你需要数据查询或写入的时候只要调用 $mysql-db;就好了

如上你可以看出,无论你有多少客户请求数据库,而数据库只在载入页面时连接一次而已,调用 $mysql-db 只是请求程序,请求方法而已,没有请求数据库。第一,数据库连接查询只有一次;第二无形中也加快了页面的载入速度。

记住,你做网页不是给一个人两个人用的,而是很很很多个,为了保证数据库的正常使用,在多请求的情况下依然能很好工作,这是个很好的办法。

最后close是可写可不写的,因为当mysql没有请求时,它会自动关闭。

为什么 PHP 一直在优化程序执行效率,而不优化数据库连接

因为程序分两种。一是逻辑层 ,二是数据层。逻辑层一般是进行运算的,比如一些算法。这个很影响执行效率的。然而数据层多数是用来存储数据的。比如用户信息、内容等。这些没有好的办法优化。但是你所谓的优化数据连接我没太理解。一般也会做数据优化。比如mysql性能优化、数据缓存、数据查询等。还有就是分布式部署等。希望能帮到你。


本文名称:php链接数据库的效率 php链接数据库的效率是多少
网页路径:http://myzitong.com/article/ddigede.html