ホームページ  >  記事  >  バックエンド開発  >  PHP7の新機能の紹介

PHP7の新機能の紹介

WBOY
WBOYオリジナル
2016-06-20 12:54:101170ブラウズ

この記事の内容は、PHP リリース時の新しいファイルに基づいています。リンクアドレス: PHP 7 new

機能リスト

  • 演算子を追加しました
  • < ;=> operato を追加しました
    新しい演算子
php// PHP 7之前的写法:比较两个数的大小function order_func($a, $b) {    return ($a < $b) ? -1 : (($a > $b) ? 1 : 0);}// PHP新增的操作符 <=>,perfectfunction order_func($a, $b) {    return $a <=> $b;}
  • u{xxxxx} Unicode コードポイント エスケープ構文を追加しました
    このメソッドを直接使用して Unicode を出力できます文字
phpecho "\u{1F602}"; // outputs (这个是方括号里面的问号,因为是unicode字符,sg博客不支持,发布出来)
  • error_clear_last() 関数を追加
    新しい関数、特定の関数は詳しく調査されていません

  • RFC スカラー型宣言 v0.5 を実装しました (Anthony)
    変数の型宣言 (int、float、string、bool)
    関連する構文:declare(strict_types=1);
    strict_types が0 に設定すると、PHP は関数のパラメーターと戻り値に対して厳密な型判定を実行します。
    必要な主なものは

    1 を最初の行に配置する必要があります。 PHP ファイルのこの行には他のコンテンツを含めることはできません。
    2 destroy(strict_types=1); この宣言ファイルを含むファイルは、
    に影響を与えません。 3 関数かどうかを決定します。メソッドが強い型か弱いかは、関数やメソッドを宣言したファイルを見て、最初に
    があればdeclare(strict_types=1);という文があれば強いです。 type
    構文のデモ

php//声明函数返回值类型的写法和参数类型function foobar(float $abc): int {    return ceil($abc + 1);}
这里声明了方法参数的类型,当调用的时候,如果不是相应的类型,会先尝试进行类型转换,然后把转换后的值传入
  • RFC グループ使用宣言 (Marcio) を実装しました
    これについては何も言うことはありません。 . PHP の使用により、クラスがより便利かつ適切に導入されました。
php// 新语法写法use FooLibrary\Bar\Baz\{ ClassA, ClassB, ClassC, ClassD as Fizbo };// 以前语法的写法use FooLibrary\Bar\Baz\ClassA;use FooLibrary\Bar\Baz\ClassB;use FooLibrary\Bar\Baz\ClassC;use FooLibrary\Bar\Baz\ClassD as Fizbo;
  • RFC Continue Output Buffering を実装しました。(Mike)
    //TODO

  • 内部クラスの RFC コンストラクター動作を実装しました (Dan、Dmitry)
    //TODO

  • RFC 修正の「foreach」動作を実装しました (Dmitry)
    foreach 構文の境界追加処理、
    https://wiki.php.net/rfc/php7_foreach

  • RFC ジェネレーター委任 (Bob)
    を実装しました。多くの高度な機能を実現できるジェネレーターの機能を強化しました

php<?php//牛逼的用法,轻量级的线程 function g() {  yield 1;  yield from [2, 3, 4];  yield 5;}$g = g();foreach ($g as $yielded) {    var_dump($yielded);}/*int(1)int(2)int(3)int(4)int(5)*/
  • RFC 匿名クラスのサポートを実装しました (Joe、Nikita、Dmitry)
    。匿名クラス。これについては詳しくは紹介しません。

  • RFC Context Sensitive Lexer を実装しました (Marcio Almada)
    この機能は主に PHP のオブジェクト指向機能をより使いやすくするためのものです
    クラスの属性またはメソッドでは、foreach、list、for などのいくつかのキーワードを使用できます。

TODO

申し訳ありませんが、今日は熱があるため、これ以上書くことができません。続きは時間があるときに書きます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。