PHP7の新機能の紹介

小云云
リリース: 2018-01-13 17:12:24
オリジナル
3373 人が閲覧しました

この記事では、皆さんのお役に立てればと思い、学習して使用すべき PHP7 の新機能を主に紹介します。

PHP7 は 2015 年 11 月に正式にリリースされました。このアップデートは PHP にとって重要なマイルストーンであると言えます。これにより、以前のバージョンのいくつかの機能が改善されるだけでなく、大幅なパフォーマンスの向上と新機能がもたらされます。この記事の編集者は、PHP7 の新機能を理解し、議論するために協力します。

1. スカラー型宣言

PHP は型指定が弱いプログラミング言語であることがわかっています。そのため、PHP7 ではこの現状を打破し、スカラー型 (int、float、 string 、 bool) 宣言のサポート、厳密な型チェックを行うかどうかを宣言するためのdeclare(strict_types=1) 命令を追加しました。コードの一部を見てみましょう:

(strict_types=) { $x + $y;} add(, );

有効な型は、クラス/インターフェイス名、self、array、callable、bool、float、int、string です。

?? - NULL 合体演算子

NULL 合体演算子は PHP7 に追加されました。これを過小評価しないでください。 ." ??" を使用すると、パラメータを簡単に取得し、空の場合にデフォルト値を提供できます。 ?? 演算子は、左側の値が存在し NULL でない場合はどのように左側を返しますか。それ以外の場合は右側の値が返されます。次のコードを通して、?? 演算子の威力を体験してみましょう。

<?php
 // 获取user参数的值(如果为空,则用&#39;nobody&#39;)
 // PHP5中我们这样来实现: $username = isset($_GET[&#39;user&#39;]) ? $_GET[&#39;user&#39;] : &#39;nobody&#39;;
 // PHP7中,使用??运算符更便捷: $username = $_GET[&#39;user&#39;] ?? &#39;nobody&#39;; 
?>
ログイン後にコピー

匿名クラス

名前が示すように、匿名クラスにはクラス名がありません。PHP7 は、完全なクラスを置き換えるために使用できる、新しいクラスによる匿名クラスのインスタンス化を同時にサポートします。 「使用後に燃える」クラス定義。

echo ( {     {       ;    }})->myMethod();
ログイン後にコピー

その他のエラーは例外で処理できます

PHP7 のその他のエラーはキャッチ可能な例外となり、キャッチされなかった場合はエラーとして、プログラム内で処理できる例外になります。例外。デフォルトでは、Error は直接プログラムを中断させますが、PHP7 は try/catch ブロックを通じてエラーをキャプチャして処理し、プログラムの実行を継続できるようにして、プログラマにより柔軟なオプションを提供します。

コード例:

nonExistFunction($arg);
ログイン後にコピー

この時点で、上記のコードは「致命的なエラー: 非オブジェクト上のメンバー関数メソッド() の呼び出し」というエラーを表示し、この致命的なエラーにより次の実行の継続が停止されます。コード。

そのため、コードの実行を継続したい場合は、例外処理を通じて解決できます:

{    nonExistFunction($arg);  }  (EngineException $e ) {     ;}
ログイン後にコピー

比較演算子 (<=>) と組み合わせる

これについては多くの説明は必要ありません。サンプルを見てみましょう。コードを直接使用すると、この演算子が何をするのかを簡単に理解できます。

{    ($a < $b) ?  : (($a > $b) ?  : )}  {    $a <=> $b;}
ログイン後にコピー

配列定数を定義する

以前は、define() を使用して定数を定義する場合、データ型はスカラーのみをサポートしていましたが、PHP7 では配列型の定数の定義をサポートします。

define(&#39;MYCONSTANT&#39;, array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;))
ログイン後にコピー

今日は、これらを最初に紹介します。今後も引き続き更新していきますので、一緒にコミュニケーションをとり、学び、進歩していきましょう。

関連する推奨事項:

PHP7のパフォーマンスを2倍にする鍵の詳細な説明

php7のパフォーマンステスト環境の構築方法

PHP5.3からPHP7.1への変更点

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