PHP7 では、戻り値の型宣言という新機能が導入されました。戻り値の型宣言は、関数によって返される値の型を指定します。以下の記事では、PHP 7 の新機能の型宣言に関する情報を中心に紹介しています。詳しく説明されているので、必要な方はぜひ参考にしてください。
はじめに
PHP7で型宣言が可能になる PHP 7でサポートされている仮引数の型宣言の型は
整数型
浮動小数点型
文字列型です。
ブール型
関数型は次のように戻り型宣言のデモに参加します
/** * @author 袁超 <yccphp@163.com> */ class Demo{ /** * int $name 则是形参类型声明 * : int 是返回类型声明 */ public function age(int $age) : int { return $age; } }
上記では、メソッドを宣言するときに、Demoクラスを定義しました。 int $name
を指定し、関数が受け取るパラメーターが int 型である必要があります。パラメーター リストの括弧の後に、関数の戻りデータ型を宣言する 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🎜🎜🎜を設定することでそれを実現します。現時点では、上記のコードを実行します。 Uncaught Type Error
が発生します🎜🎜 この変更は非常に意味があり、複数の人が関わるプロジェクトを実行するときに、ランダムなパラメータの送信やこれを無視することがなくなります。返品🎜以上がPHP 7の新機能の詳細説明: 型宣言の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。