ホームページ >PHPフレームワーク >ThinkPHP >thinkphp5 テンプレートが正の数かどうかを判断する方法

thinkphp5 テンプレートが正の数かどうかを判断する方法

PHPz
PHPzオリジナル
2023-04-17 09:52:05607ブラウズ

ThinkPHP5 フレームワークでは、数値が正の数であるかどうかの判断は、TP の組み込みバリデータを使用して判断できます。バリデータは、クラスまたは組み込み関数の検証を通じて実装できます。

この記事では、TP組み込み関数の検証方法を使用して、数値が正であるかどうかを検証する方法を紹介します。

  1. 検証ルールを定義するにはどうすればよいですか?

TP5 は、整数、浮動小数点数、日付などのデータを検証するための組み込み関数検証メソッドを提供します。これらはすべて組み込み関数を通じて検証できます。検証ルールを定義するときは、バリデーター クラスで rules() メソッドを使用する必要があります。検証ルールを定義するコードは次のようになります:

$validate = new \think\Validate([
    'num'  => 'require|number|gt:0',
]);

コードでは、num フィールドの検証ルールを定義します。このフィールドは次の 3 つの制限を満たす必要があります:

  • Required (必須)
  • 数値型 (数値)
  • は 0 より大きい (gt:0)

この例では、検証ルールを定義する方法を示します。入力する値が正の数であることを確認してください。

  1. 値が正であるかどうかを確認するにはどうすればよいですか?

値が正であるかどうかを確認する方法は、validate() 関数を使用することです。この関数に検証する値と検証ルールを渡すと、検証を完了できます。validate 関数は、検証に合格したかどうかを示すブール値を返します。

ルールは前に定義されているので、値が正の数であるかどうかを確認してみましょう:

$result = $validate->check([
    'num' => 10.2
]);

検証関数は true を返します。検証関数の戻り値が true の場合、それは意味します。検証に合格した場合、それ以外の場合は検証に合格したことを意味し、失敗します。

validate() 関数を使用して、指定されたフォームの num フィールドの値が正の数であるかどうかを確認します。

  1. この関数を複数回使用できるようにカプセル化するにはどうすればよいですか?

関数のカプセル化により、共通の検証ルールをより便利に使用でき、異なる場所で同じ検証コードを繰り返し記述することを回避できます。次に、「isPositiveNumber」という名前の関数をカプセル化して、入力値が正の数かどうかを確認します。

/**
 * 验证数值是否为正数
 * @param float $value 需要验证的值
 * @return bool 验证结果
 */
function isPositiveNumber($value): bool{
    //定义验证规则
    $validate = new \think\Validate([
        'num'  => 'require|number|gt:0',
    ]);
    //执行验证
    return $validate->check([
        'num' => $value
    ]);
}

このコードでは、パラメータとして値を受け取り、検証のためにその値を num フィールドとしてバリデーターに渡し、最後に検証結果を返す関数 isPositiveNumber を定義します。

このカプセル化されたコードを通じて、入力値が正の数であるかどうかを判断するために正の数を検証する必要があるこの関数を参照できます。

結論

上記の紹介を通じて、ThinkPHP5 の組み込みバリデーターの関数検証メソッドを使用して、入力値が正の数であるかどうかを検証する方法を学びました。プロジェクト内で正の数を検証する関数を複数回使用する必要がある場合は、関数のカプセル化を通じてその関数を実装し、コードの再利用性と保守性を向上させることができます。

以上がthinkphp5 テンプレートが正の数かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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