<?php
/**
*
测试pdo和mysqli的执行效率
*/
header("Content-type:text/htmlcharset=utf-8")
//通过pdo链接数据库
$pdo_startTime
=
microtime(true)
$pdo
=
new
PDO("mysql:host=localhostdbname=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数据库 *** 作类
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)