mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-08-12 04:40:26 +00:00
Because PHP can be configured without --filter, it is not 100% safe to use filter_var(). This is problematic for casting "false" to false, as PHP always casts it to true. FILTER_VALIDATE_BOOLEAN fixes this, but it may not be available.
Add a new function, `wp_validate_boolean()`, to replace `filter_var( $var, FILTER_VALIDATE_BOOLEAN )`. Fixes #28170. git-svn-id: https://develop.svn.wordpress.org/trunk@28542 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -4445,3 +4445,23 @@ function mbstring_binary_safe_encoding( $reset = false ) {
|
||||
function reset_mbstring_encoding() {
|
||||
mbstring_binary_safe_encoding( true );
|
||||
}
|
||||
|
||||
/**
|
||||
* Alternative to filter_var( $var, FILTER_VALIDATE_BOOLEAN )
|
||||
*
|
||||
* @since 4.0.0
|
||||
*
|
||||
* @param mixed $var
|
||||
* @return boolean
|
||||
*/
|
||||
function wp_validate_boolean( $var ) {
|
||||
if ( is_bool( $var ) ) {
|
||||
return $var;
|
||||
}
|
||||
|
||||
if ( 'false' === $var ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return (bool) $var;
|
||||
}
|
||||
Reference in New Issue
Block a user