PHP7 RC7 Release对比PHP5.6快速排序20_php

  • 内容
  • 评论
  • 相关

最近Zend的php7已经 处于最后的BUG修复阶段,目前 已经更新RC7,对于Zend官方的说法PHP7的性能大约相比PHP5系列版本 提高2倍以上,增加了一些新的语法,摒弃了PHP5的一些影响性能的因素,主要增加了以下Features 。

  • Improved performance: PHP 7 is up to twice as fast as PHP 5.6 性能比5.6提高2倍 Consistent 64-bit support 64位一致性支持Many fatal errors are now Exceptions 增加许多致命错误异常 Removal of old and unsupported SAPIs and extensions 移除了旧的不支持的 SAPIS 和一些扩展The null coalescing operator (??) 空合并运算符 Combined comparison Operator (<=>) 结合比较运算符 Return Type Declarations 和c语言等一样 显示的返回值类型Scalar Type Declarations 标量类型定义Anonymous Classes 匿名类!处于好奇的心态我同时安装了PHP5.5 以及PHP7 RC7 Release,体验一下 , 于是分别体验了 PHP7的 性能提升 以及 新语法,至于怎么安装配置PHP7相信不用我说了,废话不多说。
    http://php.net/ php7 RC7 Release官方地址
    https://wiki.php.net/rfc/scalar_type_hints_v5 PHP7 wiki

    http://www.gaodaima.com/51822.htmlPHP7 RC7 Release对比PHP5.6快速排序20_php

    1、PHP7与PHP5.5性能对比

    PHP7的性能相对于PHP5.6提高了多少,下面用一个简单而且傻逼的代码来测试一下就知道了,这里我用5.5版本的PHP对比一下吧,电脑上只有5.5了 懒得去安装PHP5.6。
    如下图php7和php5.5:PHP7 RC7 Release对比PHP5.6快速排序20PHP7 RC7 Release对比PHP5.6快速排序20

    1.1我这里用一小段傻逼代码来测试一下PHP:

     $high)    return ;  $begin=$low;  $end=$high ;  $key=$arr[$begin];  while($begin<$end)  {  while($begin<$end&&$arr[$end]>=$key)     --$end ;  $arr[$begin]=$arr[$end];  while($begin<$end&&$arr[$begin]<=$key)    ++$begin;  $arr[$end]=$arr[$begin];    }   $arr[$begin]=$key;   QuickSort($arr,$low,$begin-1);   QuickSort($arr,$begin+1,$high); } $time_start = microtime_float(); $arr=array(); for($i=0;$i

    1.2 测试结果

    分别在PHP7和PHP5.5下运行20000随机数据 快速排序算法之后结果 PHP7是PHP5.5的12倍!!!! 看来PHP7开始要雄起了!

    下面分别是PHP7 RC7和 PHP5运行上述快速排序 20000数据算法的速度。
    PHP7 RC7 Release对比PHP5.6快速排序20PHP7 RC7 Release对比PHP5.6快速排序20

    2、PHP7新语法体验

    2.1、标量类型 和强类型

    PHP7新增四个标量类型 int, float, string bool, 首先要使用强类型 必须在文件中加入指令

  • declare(strict_types=1)该指令必须是第一个指令而且只有一种用法 所谓严格类型强类型的概念就是,我们要摒弃PHP5.6之前的若类型观念,因为我们知道PHP本身一门若类型语言,正因为如此在类型转换已经类型检查导致PHP语言本身性能极为低下php7的这一举动 也证明了这一点,例如下面代码
     

    如果把上述代码改为return 1;才能正常运行,否则运行会报错,这就是PHP7的强类型约束,此模式下完全摒弃若类型。

     

    2.2 强类型参数

     
     

    var_dump的结果是 int(3)

    2.3 返回类型冲突

    返回值类型和强类型约束不同 将跑出异常

     getMessage();  }  ?>

    OK关于Scalar Type就不一个一个写了
    更多的介绍请参考:https://wiki.php.net/rfc/scalar_type_hints_v5#php_rfcscalar_type_declarations

    2.4 、关于PHP的 Anonymous Class

    简单匿名类继承

     M2()->M1(); ?>

    简单的匿名类实例化

     i = $i;     } }); ?>

     

欢迎大家阅读《PHP7 RC7 Release对比PHP5.6快速排序20_php》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码

原创文章,转载请注明: 转载自搞代码

本文链接地址: PHP7 RC7 Release对比PHP5.6快速排序20_php

微信支付二维码

微信 赏一包辣条吧~

支付宝支付二维码

支付宝 赏一听可乐吧~

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注