PHP 7 の新機能: 型宣言

怪我咯
怪我咯オリジナル
2017-07-14 14:09:111348ブラウズ

PHP7 は PHP スクリプト言語のメジャー バージョン アップデートとなり、大幅なパフォーマンスの向上と新機能が追加されるほか、いくつかの古い機能も改善されます。 このリリースはパフォーマンスの強化に焦点を当てており、PHP バージョン ツリーの phpng ブランチから派生しています。

PHP7では、戻り値の型宣言という新機能が導入されました。戻り値の型宣言は、関数によって返される値の型を指定します。以下の記事では、PHP 7 の新機能の型宣言に関する関連情報を中心に紹介しています。詳しく説明されているので、必要な方はぜひ参考にしてください。

はじめに

PHP7で型宣言が可能になります

関数シェイプは次のように戻り値の型宣言デモに参加します

/**
 * @author 袁超 <yccphp@163.com>
 */
class Demo{

 /**
 * int $name 则是形参类型声明
 * : int 是返回类型声明
 */
 public function age(int $age) : int
 {
 return $age;
 }

}

上記では、int $name では、関数が受け取るパラメーターが int 型である必要があります。パラメーター リストのかっこの後に、関数 データ型int $name 要求 函数接收的参数必须是 int 类型的,在参数列表括号后面,我们跟上了 : int ,则是声明了我们这个函数的返回数据类型

$demo = new Demo();

$demo->age(10.23); // 我们传递的是 float 型参数,也能通过检查

在上面例子中,我们传递的是一个 float 类型的参数,但是代码还是能够正常运行起来的

这是因为在 php7 中,默认情况下形参类型说明不是完全被限制的,这就意味着我们定义的东西只是一个建议,而不是完全约束

当然,我们可以完全限制,我们通过设置来实现

declare(strict_type=1);

这个时候,我们运行上面的代码,则会得到一个 Uncaught Type Error

rrreee🎜 上の例では、float 型パラメータを渡していますが、コードはまだ正常に実行されています🎜🎜これは、php7 では、仮パラメータ型の説明がデフォルトで完全に制限されていないためです。つまり、定義した内容は単なる提案であり、完全ではありません。制約 🎜🎜🎜 もちろん、完全に制限することもできます。🎜rrreee🎜 を設定することで実現できます。この時点で、上記のコードを実行すると、キャッチされない型エラー🎜

以上がPHP 7 の新機能: 型宣言の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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