程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP7 RC7 Release對比PHP5.6快速排序20000數據性能體驗以及新語法嘗鮮

PHP7 RC7 Release對比PHP5.6快速排序20000數據性能體驗以及新語法嘗鮮

編輯:關於PHP編程

PHP7 RC7 Release對比PHP5.6快速排序20000數據性能體驗以及新語法嘗鮮


最近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



    1、PHP7與PHP5.5性能對比

    PHP7的性能相對於PHP5.6提高了多少,下面用一個簡單而且傻逼的代碼來測試一下就知道了,這裡我用5.5版本的PHP對比一下吧,電腦上只有5.5了 懶得去安裝PHP5.6。
    如下圖php7和php5.5://

    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數據算法的速度。
    //


    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;
        }
    });
    ?>
     











     

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved