ホームページ  >  記事  >  バックエンド開発  >  PHP 7の新機能の詳細説明: 型宣言

PHP 7の新機能の詳細説明: 型宣言

怪我咯
怪我咯オリジナル
2017-06-16 10:49:051475ブラウズ

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 サイトの他の関連記事を参照してください。

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