この記事では、関数がパラメータを渡さなければならないかどうかを確認するPHPの詳細な説明の関連情報を主に紹介します。必要な方は参照してください。が存在する場合、インターフェイスはフロントエンドからパラメーターを受け取ることがよくありますが、その一部は必須ではなく、「関数の必須パラメーターが存在するかどうかを確認する」にはどうすればよいですか?この問題を解決するには、次のメソッド例を参照してください:
/** * @brief 检测函数必传参数是否存在 * @param $params array 关联数组 要检查的参数 * @param array $mod array 索引数组 要检查的字段 * @param array $fields array 索引数组 额外要检查参数的字段 * @return bool * @throws Exception */ private function checkParamsExists($params, $mod = [], $fields = []) { if (empty($params)) { throw new \Exception(Error::ERROR_INVALID_PARAMETER_MSG . ',[checkParamsExists] the array of params is empty', Error::ERROR_INVALID_PARAMETER_CODE); } $params = is_array($params) ? $params : [$params]; if ($fields) { $fields = array_flip($fields); $params = array_merge($params, $fields); } foreach ($mod as $mod_key => $mod_value) { if (!array_key_exists($mod_value, $params)) { throw new \Exception(Error::ERROR_INVALID_PARAMETER_MSG . ',[checkParamsExists]' . json_encode($params) . ' do not have key field(' . $mod_value . ')', Error::ERROR_INVALID_PARAMETER_CODE); } } return true; }
実際のアプリケーションでは、アプリケーション ロジックの先頭でこのメソッドを直接呼び出すだけです。
エラーコードは私がカスタマイズしたエラーコードです。使用するときは必ず自分のものに変更してください。
関連する推奨事項:PHPで関数パラメータを動的に取得する手順の詳細な説明
以上がPHP は関数内に必要なパラメータが存在するかどうかを判断しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。