PHPのスカラー型と戻り値の型宣言
スカラ型宣言
デフォルトでは、PHPファイルのすべては、弱い型チェックモードになっています。
PHP 7は、特徴的なスカラ型宣言されたスカラー型宣言は、2つのモードがあり増やします。
- 強制モード(デフォルト)
- strictモード
スカラ型宣言の構文:
declare(strict_types=1);
0弱い型チェックモードを表し、値(1または0)、1厳密な型チェックモード、関数呼び出しの役割とreturn文を指定してStrict_typesコード。
Typeパラメータを使用することができます:
int型
フロート
ブール値
文字列
インターフェース
配列
呼び出し可能
執行モードの例
例
<?phpの
//施行モード
関数 sum(int型... $ int型)
{
($ int型)をarray_sum 返します 。
}
印刷(和(2、3 ' '、4.1));
?>
//施行モード
関数 sum(int型... $ int型)
{
($ int型)をarray_sum 返します 。
}
印刷(和(2、3 ' '、4.1));
?>
上記プログラム実行出力は、次のとおりです。
9
4 4.1は、整数に変換した後、加算された要約パラメータの例。
厳格なモードの例
例
<?phpの
// strictモード
宣言 (strict_types = 1);
関数 sum(int型... $ int型)
{
($ int型)をarray_sum 返します 。
}
印刷(和(2、3 ' '、4.1));
?>
// strictモード
宣言 (strict_types = 1);
関数 sum(int型... $ int型)
{
($ int型)をarray_sum 返します 。
}
印刷(和(2、3 ' '、4.1));
?>
なぜならstrictモードの上記のプログラムは、入力した場合には与えられて体調不良整数パラメータを表示されるように、実行出力は次のようになります。
PHP Fatal error: Uncaught TypeError: Argument 2 passed to sum() must be of the type integer, string given, called in……
戻り値の型宣言
PHP 7は、それが関数の戻り値の型宣言の戻り値の型を示し、戻り値の型宣言のサポートを追加します。
タイプは復帰を宣言することができます。
int型
フロート
ブール値
文字列
インターフェース
配列
呼び出し可能
戻り値の型宣言の例
たとえば、整数に戻るに尋ねました:
例
<?phpの
宣言 (strict_types = 1);
関数returnIntValue(int型$値): int型
{
$値を返します 。
}
印刷 (returnIntValue(5));
?>
宣言 (strict_types = 1);
関数returnIntValue(int型$値): int型
{
$値を返します 。
}
印刷 (returnIntValue(5));
?>
上記プログラム実行出力は、次のとおりです。
5
エラーの戻り型の宣言の例 例
<?phpの
宣言 (strict_types = 1);
関数returnIntValue(int型$値): int型
{
戻り $値+ 1.0;
}
印刷 (returnIntValue(5));
?>
例
<?phpの
宣言 (strict_types = 1);
関数returnIntValue(int型$値): int型
{
戻り $値+ 1.0;
}
印刷 (returnIntValue(5));
?>
宣言 (strict_types = 1);
関数returnIntValue(int型$値): int型
{
戻り $値+ 1.0;
}
印刷 (returnIntValue(5));
?>
上記のプログラムは、strictモードのため、戻り値はint型である必要がありますが、結果はフロート、それは与えられますされ、実行出力は次のようになります。
Fatal error: Uncaught TypeError: Return value of returnIntValue() must be of the type integer, float returned...