rest_are_values_equal()
Checks the equality of two values, following JSON Schema semantics.
Property order is ignored for objects.
Values must have been previously sanitized/coerced to their native types.
No Hooks.
Returns
true|false. True if the values are equal or false otherwise.
Usage
rest_are_values_equal( $value1, $value2 );
- $value1(mixed) (required)
- The first value to check.
- $value2(mixed) (required)
- The second value to check.
Changelog
| Since 5.7.0 | Introduced. |
rest_are_values_equal() rest are values equal code WP 7.0
function rest_are_values_equal( $value1, $value2 ) {
if ( is_array( $value1 ) && is_array( $value2 ) ) {
if ( count( $value1 ) !== count( $value2 ) ) {
return false;
}
foreach ( $value1 as $index => $value ) {
if ( ! array_key_exists( $index, $value2 ) || ! rest_are_values_equal( $value, $value2[ $index ] ) ) {
return false;
}
}
return true;
}
if ( is_int( $value1 ) && is_float( $value2 )
|| is_float( $value1 ) && is_int( $value2 )
) {
return (float) $value1 === (float) $value2;
}
return $value1 === $value2;
}