我是靠谱客的博主 清爽火龙果,最近开发中收集的这篇文章主要介绍新学php7还是php5,php7与php5的区别有哪些?看看你准备用哪个版本的php,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

【摘要】现在市面上的PHP版本已经更新到7的大类了,但是仍然有小伙伴习惯使用php5,那么php7与php5的区别的区别有哪些?看看你准备用哪个版本的php,因为在学习php之前,选择合适的软件很重要,所以我们一起来看看php7与php5的区别有哪些?看看你准备用哪个版本的php。

1、php7与php5的区别有哪些——纯php脚本测试

vim test.php

$arr = array();

for ($i = 0; $i < 500000; $i++) {

$arr[$i] = $i;

}

$tmp = array();

foreach ($arr as $i) {

if ($i % 2 == 0) {

$is_exists = array_key_exists($i, $arr);

if ($is_exists) {

array_push($tmp, $i);

}

}

}

PHP5版本测试:

time /usr/bin/php test.php

real 0m0.301s

user 0m0.239s

sys 0m0.050s

--------------------------

time /usr/bin/php test.php

real 0m0.310s

user 0m0.241s

sys 0m0.054s

--------------------------

time /usr/bin/php test.php

real 0m0.289s

user 0m0.238s

sys 0m0.050s

PHP7版本测试:

time /usr/local/php7/bin/php test.php

real 0m0.087s

user 0m0.063s

sys 0m0.024s

-------------------------------------

time /usr/local/php7/bin/php test.php

real 0m0.106s

user 0m0.073s

sys 0m0.033s

--------------------------------------

time /usr/local/php7/bin/php test.php

real 0m0.083s

user 0m0.061s

sys 0m0.022s

通过数据可以看出来,单纯的php脚本测试,可以看出php7性能提升了3到4倍。

2、php7与php5的区别有哪些——php数据库操作测试

首先我们创建一个用户表:

Table: test_user

Create Table: CREATE TABLE `test_user` (

`uid` int(11) NOT NULL AUTO_INCREMENT,

`name` char(100) NOT NULL DEFAULT '',

PRIMARY KEY (`uid`)

) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8

给test_user表插入一条数据:

insert into test_user (uid,name) values (1,"dada");

MariaDB [test]> select * from test_user;

+-----+------+

| uid | name |

+-----+------+

| 1 | dada |

+-----+------+

创建数据库测试脚本test_db.php,确保你的两个PHP版本都安装了PDO扩展。

/usr/bin/php -m|grep pdo

pdo_mysql

pdo_sqlite

/usr/local/php7/bin/php -m|grep pdo

pdo_mysql

pdo_sqlite

我的两个PHP版本已经安装了PDO(不要再使用php_mysql扩展,已经过时了,PHP7已经完全抛弃,mysqli也不建议使用)。

接下来我们通过PDO编写脚本,测试select执行50万次的性能对比:

$host = "yourHost";

$user = "yourUser";

$pass = "yourPass";

$db = "test";

$port = 3306;

try

{

$dbh = new PDO("mysql:host=$host;dbname=$db", $user, $pass);

echo "Connected

";

}

catch (Exception $e)

{

echo "Unable to connect: " . $e->getMessage() ."

";

}

$sql = "select SQL_NO_CACHE * from test_user;";

$tmp = array();

for ($i=1; $i<=500000; $i++) {

$ret = $dbh->query($sql);

foreach ($ret as $row) {

$tmp['id'] = $row['id'];

$tmp['name'] = $row['name'];

}

}

PHP5测试test_db.php:

time /usr/bin/php test_db.php

real 0m48.396s

user 0m11.149s

sys 0m3.998s

real 0m51.447s

user 0m11.800s

sys 0m4.395s

real 0m51.517s

user 0m11.733s

sys 0m4.439s

PHP7测试test_db.php:

real 0m47.900s

user 0m9.875s

sys 0m4.130s

real 0m46.977s

user 0m9.760s

sys 0m3.983s

real 0m50.010s

user 0m10.268s

sys 0m4.307s

这次脚本执行了50w次查询,user执行时间PHP7执行的脚本几乎都比PHP5要少一秒!是少一秒不是一毫秒。

3、php7与php5的区别有哪些——PHP框架测试

thinkphp

国内肯定是首选thinkphp框架,选择最新的thinkphp5。我这里直接在官网下载的thinkphp5.0.9版本。

(一)框架入口测试

PHP5下的测试:

time /usr/bin/php ./public/index.php

real 0m0.036s

user 0m0.026s

sys 0m0.010s

real 0m0.038s

user 0m0.026s

sys 0m0.012s

real 0m0.041s

user 0m0.032s

sys 0m0.009s

PHP7下的测试:

time /usr/local/php7/bin/php ./public/index.php

real 0m0.027s

user 0m0.021s

sys 0m0.005s

real 0m0.027s

user 0m0.018s

sys 0m0.009s

real 0m0.025s

user 0m0.023s

sys 0m0.002s

在入口测试下,可以看到PHP和PHP7没有太大的区别,但PHP7还是稍微快一点。

(二)框架逻辑测试

在框架入口复用第一步的逻辑:

namespace appindexcontroller;

class Index

{

public function index()

{

$arr = array();

for ($i = 0; $i < 500000; $i++) {

$arr[$i] = $i;

}

$tmp = array();

foreach ($arr as $i) {

if ($i % 2 == 0) {

$is_exists = array_key_exists($i, $arr);

if ($is_exists) {

array_push($tmp, $i);

}

}

}

}

}

PHP5版本:

time /usr/bin/php ./public/index.php

real 0m0.538s

user 0m0.463s

sys 0m0.072s

real 0m0.454s

user 0m0.386s

sys 0m0.065s

real 0m0.387s

user 0m0.331s

sys 0m0.055s

PHP7版本:

time /usr/local/php7/bin/php ./public/index.php

real 0m0.150s

user 0m0.123s

sys 0m0.024s

real 0m0.137s

user 0m0.105s

sys 0m0.031s

real 0m0.123s

user 0m0.096s

sys 0m0.026s

在thinkphp框架中使用PHP7版本,性能提升大约是PHP5版本的4倍!

以上就是《php7与php5的区别有哪些?看看你准备用哪个版本的php》的全部内容了,如果你选择了更适合你的版本,那么你学习PHP的效率将将增快,所以环球网校的小编建议您认真阅读本文。如果你想知道更多php的知识,可以点击下方资料下载链接。

最后

以上就是清爽火龙果为你收集整理的新学php7还是php5,php7与php5的区别有哪些?看看你准备用哪个版本的php的全部内容,希望文章能够帮你解决新学php7还是php5,php7与php5的区别有哪些?看看你准备用哪个版本的php所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部