PHP で関数パラメータの型をチェックする方法: typehints を使用してパラメータと戻り値の型を指定し、TypeError 例外をスローします。getType() を使用して、条件文に使用される変数の実際の型を取得します。assert を使用します。 () 条件をチェックします。 false の場合は、AssertionError 例外とエラー メッセージがスローされます。
PHP 関数のパラメーターの型を確認する方法
まえがき
最新の開発では、型チェックはますます重要になっており、コードの保守性と信頼性を向上させることができます。 PHP 言語には、関数のパラメーターの型を確認するためのメソッドがいくつか用意されています。
方法 1: typehints を使用する
Typehints は、PHP 7 で導入された糖衣構文で、これを使用すると、関数宣言で予期されるパラメーターの型を指定できます。
function add(int $a, int $b): int { return $a + $b; }
int
typehint は、パラメータと戻り値が両方とも整数型であることを指定します。渡された引数が整数でない場合、PHP は TypeError 例外をスローします。
方法 2: getType()
getType()
関数を使用して、変数の実際の型を取得します。
function isString(mixed $value): bool { return gettype($value) === 'string'; }
mixed
typehint 指定するパラメータは任意の型にすることができます。 gettype()
この関数は、条件文で使用する変数の実際の型を返します。
方法 3:assert() を使用する
assert()
この関数は実行時に条件をチェックできます。条件が false の場合、AssertionError 例外がスローされます。
function validateEmail(string $email): void { assert(filter_var($email, FILTER_VALIDATE_EMAIL), 'Invalid email address'); }
assert()
この関数は、条件とエラー メッセージの 2 つのパラメータを受け取ります。条件が false の場合、AssertionError 例外がスローされ、エラー メッセージが表示されます。
実践的なケース
ユーザー入力を処理する関数があるとします。 typehints と assert()
を使用して、入力が有効かどうかを確認できます。
function processInput(array $data): void { assert(array_key_exists('name', $data), 'Missing "name" field'); assert(array_key_exists('email', $data), 'Missing "email" field'); assert(filter_var($data['email'], FILTER_VALIDATE_EMAIL), 'Invalid email address'); // 处理经过验证的输入... }
この例では、$data
配列に が含まれていることを確認します。 name
フィールドと email
フィールド、電子メール アドレスは有効です。これらの条件が満たされない場合は、AssertionError 例外が発生し、適切なエラー メッセージが表示されます。
以上がPHP関数のパラメータの型を確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。