函数文档

rest_validate_integer_value_from_schema()

💡 云策文档标注

概述

rest_validate_integer_value_from_schema() 是一个 WordPress REST API 函数,用于基于模式验证整数值。它通过调用 rest_validate_number_value_from_schema() 进行数字验证,并检查值是否为整数类型。

关键要点

  • 函数接受三个参数:$value(要验证的值)、$args(模式数组)和 $param(参数名,用于错误消息)。
  • 返回 true 表示验证成功,或返回 WP_Error 对象表示验证失败。
  • 验证过程包括数字验证和整数类型检查,使用 rest_is_integer() 判断值是否为整数。
  • 如果验证失败,会返回一个 WP_Error,错误代码为 'rest_invalid_type',消息包含参数名和类型信息。

代码示例

function rest_validate_integer_value_from_schema( $value, $args, $param ) {
    $is_valid_number = rest_validate_number_value_from_schema( $value, $args, $param );
    if ( is_wp_error( $is_valid_number ) ) {
        return $is_valid_number;
    }

    if ( ! rest_is_integer( $value ) ) {
        return new WP_Error(
            'rest_invalid_type',
            sprintf( __( '%1$s is not of type %2$s.' ), $param, 'integer' ),
            array( 'param' => $param )
        );
    }

    return true;
}

注意事项

  • 此函数依赖于 rest_validate_number_value_from_schema() 和 rest_is_integer() 进行验证,确保这些相关函数可用。
  • 错误消息使用 __() 函数进行国际化处理,便于多语言支持。
  • 函数从 WordPress 5.7.0 版本开始引入,使用时需注意版本兼容性。

📄 原文内容

Validates an integer value based on a schema.

Parameters

$valuemixedrequired
The value to validate.
$argsarrayrequired
Schema array to use for validation.
$paramstringrequired
The parameter name, used in error messages.

Return

true|WP_Error

Source

function rest_validate_integer_value_from_schema( $value, $args, $param ) {
	$is_valid_number = rest_validate_number_value_from_schema( $value, $args, $param );
	if ( is_wp_error( $is_valid_number ) ) {
		return $is_valid_number;
	}

	if ( ! rest_is_integer( $value ) ) {
		return new WP_Error(
			'rest_invalid_type',
			/* translators: 1: Parameter, 2: Type name. */
			sprintf( __( '%1$s is not of type %2$s.' ), $param, 'integer' ),
			array( 'param' => $param )
		);
	}

	return true;
}

Changelog

Version Description
5.7.0 Introduced.