PHP 7 の新しいコンテンツの紹介

WBOY
リリース: 2016-08-08 09:21:40
オリジナル
869 人が閲覧しました

PHP 7 の新しいコンテンツの紹介

2015 年の夏は暑くありませんが、インターネット技術の夏は他のどの年よりも暑いです。
5 月末に NetEase、Alipay、Ctrip および多くのクラウド ストレージ メーカーが相次いで失敗したという悪いニュースが終わりました。6 月初めに、プログラミング言語の世界に 2 つの良いニュースがもたらされました。1 つ目はリリースでした。そしてSwift 2.0のオープンソース、もう1つはPHP 7のアルファ版が正式にリリースされたことです。これら 2 つの主要なイベントは、対応するプログラミング言語で記録できる歴史的なイベントです。
今は Swift 2.0 については話さないようにしましょう。この記事の焦点は、Niao 兄弟と他の偉大なマスターによって 2 年間磨き上げられた PHP 7 を皆さんに見ていただき、それが本当に前に述べたように横暴であるかどうかを確認することです。 。既存のソフトウェアと拡張機能の互換性もテストします。
PHP7 のインストールには下位互換性があり、ダウンロードして解凍し、以前の設定コマンドを使用して、何も抵抗なく Enter キーを押し続けます。既存の環境の動作に影響を与えないように、すべてのディレクトリが特別に開かれています。
設定パラメータは次のとおりです:
--prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysqli --with-pdo-mysql --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts
インストール後、ソフトリンクを作成します:
ln -s /usr/local/php7/bin/php /usr/bin/php7 ln -s /usr/local/php7/bin/php-config /usr/bin/php7-config ln -s /usr/local/php7/bin/phpize /usr/bin/php7ize ln -s /usr/local/php7/sbin/php-fpm /usr/sbin/php7-fpm
php7 -v おなじみのプロンプトが表示されます:
[root@localhost test]# php7 -v PHP 7.0.0alpha1 (cli) (built: Jun 13 2015 11:33:39) Copyright (c) 1997-2015 The PHP Group Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies
最初に行うことは、パフォーマンス評価、評価モデル、Capital Online Cloudホスト、4 コア CPU Intel(R) Xeon(R) CPU E5-2680 0 @ 2.70GHz、メモリ 4G、オペレーティング システム Centos 6.5。
私はランダムに 3 つのプログラムを書きました:
最初の部分は 600,000 要素の配列を生成し、キーを検索することによってキーが存在するかどうかを判断します。
rreee
まずは PHP バージョン 5.3.17 です。
rreee
2つ目はPHP7のバージョンです。
起動するとすぐに、PHP7 で実行すると、応答時間が元の 1/4 に短縮されました。本当にすごい!
次に、さらに 2 つ試行する必要があります。2 番目の段落は上記と同じ方法ですが、処理が遅いため、値を見つけるのに 60,000 個の要素の配列が必要になります。
コードは次のとおりです:
[root@localhost test]# time php search_by_key.php real 0m0.389s user 0m0.337s sys 0m0.051s [root@localhost test]# time php search_by_key.php real 0m0.378s user 0m0.308s sys 0m0.062s [root@localhost test]# time php search_by_key.php real 0m0.378s user 0m0.317s sys 0m0.061s
待ち時間は常に 3 つのテストで 75 秒以上かかりました。次に、PHP 7 が登場します。
rreee
くそー、あるのか!速度は約7倍に向上しました。
著者の興奮は言葉では言い表すことができず、比較的効率的な素数アルゴリズムを作成しました。 2,000,000 以内の素数の数を計算します
今回は PHP7 から始めます。
rreee
速度は1.2Sで安定しています
PHP5.3に関しては、今回は前回よりも差は小さくなりましたが、PHP7も3倍から4倍程度の速度が出ています。
[root@localhost test]# time php7 search_by_key.php real 0m0.139s user 0m0.055s sys 0m0.048s [root@localhost test]# time php7 search_by_key.php real 0m0.089s user 0m0.058s sys 0m0.030s [root@localhost test]# time php7 search_by_key.php real 0m0.097s user 0m0.065s sys 0m0.022s
この時点で、問題は基本的に説明できます。これらのコードは複雑な関数ライブラリを使用しておらず、大量のネットワークと IO も必要としませんが、パフォーマンスは少なくとも 3 倍最適化されています。これは本当に歴史的な進歩です。これまでのパフォーマンス評価では、言語レベルのパフォーマンスが無視されることがよくありました。なぜこのように言えるのでしょうか? たとえば、XHProf には、組み込み関数や内部関数などを分析しないために使用される特別なオプションがあります。配列、日付などの関数。誰もがこの分野の改善の余地を見逃しがちであり、もちろん、普通の人がこの分野を改善することはできないため、HHVM が作成され、今日の PHP 7 に影響を与えました。
素数を見つけるためのアルゴリズムを取得したい場合は、Youcai.comの公開アカウントをフォローし、キーワード「素数」を入力して取得してください。
一連のテストの後、PHP 7 についてもっと知りたいという興味が湧きました。拡張機能といくつかの一般的なフレームワークがどのようにサポートされているかを確認したかったので、次の 4 つのテストを作成しました。
まず第一に、XHProf です。パフォーマンスの最適化に重点を置いているアーキテクトとして、XHProf はプログラムのパフォーマンスの問題を数分で特定できるツールの 1 つです。現在のバージョンを見ると、XHProf は欠かせません。はい、github からコピーをダウンロードする必要がありました。その結果、phpize は問題なく、

configure は問題ありませんでしたが、

make は悲劇でした。基盤となるデータ構造が変更されたようです。バード兄さんのバージョンアップを楽しみにしています。

XHProfが使えないので、クラウド上のXHProf OneAPMは使えますか?最近ではOneAPMが使われることが多くなってきていますが、自分でコードを埋め込んだり、余計な設定をする必要はありません。インストールの結果も悲惨です。解決できない場合は、ニアオ兄弟を雇ってください。すぐに解決できると思います。

拡張機能に関しては、テストを続ける自信がありません。一般的に使用されているものを 2 つ挙げます。Web サイトは調和されていますが、地球上の誰もがそれを知っています。もう 1 つは ThinkPHP で、中国で最も広く使用されている PHP 開発フレームワークです。これは間違いなくナンバー 1 です。筆者もTPのファンです。
これら 2 つのソフトウェアがよくやったことを賞賛すべきでしょうか? PHP 7 の互換性の良さを賞賛すべきでしょうか? とにかく、最初は正常でした。

PHP 7 が FastCGI バックエンドとして使用されている場合、Wordpress バックエンドは正常に動作します。

ThinkPHP 最新バージョン 3.2.3 は、PHP 7 で正常に動作します。
そうですね、週末の午後を PHP 7 をいじって過ごした後、私は PHP 7 のファンになりました。また、私たちの大規模な PHP が今後も中国のインターネット技術業界を席巻し、PHP 技術者はさらに優れたものになるだろうと考えました。もっと見る 欠品のため。また、より多くの PHP 技術者が言語と文法を学ぶだけでなく、より高いレベルに立って、ホワイトボックスの運用と保守を行い、パフォーマンスの最適化に重点を置き、フルスタックエンジニアになり、高給を獲得し、白人と結婚することを期待しています。 . 豊かに美しく、人生の理想を実現します。

参照元:
PHP 7 新コンテンツ紹介
http://www.lai18.com/content/434544.html

上記は、PHP 7 の新しい内容を内容の側面も含めて紹介したもので、PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート