codit_sanitize_boolean() - Sanitize Boolean Values and control their format
This function appears in the Codit Module
This is a handy function to use to be able to pass it a variety of values and have the function return either of three flavors of boolean values.
<?php
/**
* Accepts bool or quasi-bool, returns sanitized value or other un-altered.
*
* @param string $quasi_bool
* Can be a variety of items (1, true, T, True, TRUE, 0, false, F, False,
* FALSE) that resemble true or false.
*
* @param string $s_type
* Indicates what type of item you want returned (string, boolean, or binary)
* string returns 'true'/'false' or passthrough unless $b_return_strict = true
* boolean returns true / false or passthrough unless $b_return_strict = true
* binary returns 1/0 or passthrough unless $b_return_strict = true
*
* @param bool $b_return_strict
* If true, any non-quasi boolean will return false. If set to false,
* non-quasi boolean will just be passed through and returned.
*
* @return string|boolean|binary
* Depending on the $s_type setting.
*/
function codit_sanitize_boolean($quasi_bool, $s_type = 'binary', $b_return_strict = FALSE) {
// Consult the module to see the current code.
?>
Here is what some test returns look like:
----TEST $test = '' --------------------------------------------
sanitizeBoolean($test) --returns-->
sanitizeBoolean($test, 'binary') --returns-->
sanitizeBoolean($test, 'string') --returns-->
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns-->
sanitizeBoolean($test, 'string', 0) --returns-->
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = ' ' --------------------------------------------
sanitizeBoolean($test) --returns-->
sanitizeBoolean($test, 'binary') --returns-->
sanitizeBoolean($test, 'string') --returns-->
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns-->
sanitizeBoolean($test, 'string', 0) --returns-->
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = 'ddd' --------------------------------------------
sanitizeBoolean($test) --returns--> ddd
sanitizeBoolean($test, 'binary') --returns--> ddd
sanitizeBoolean($test, 'string') --returns--> ddd
sanitizeBoolean($test, 'boolean') --returns--> ddd
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> ddd
sanitizeBoolean($test, 'string', 0) --returns--> ddd
sanitizeBoolean($test, 'boolean', 0) --returns--> ddd
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = '0' --------------------------------------------
sanitizeBoolean($test) --returns--> 0
sanitizeBoolean($test, 'binary') --returns--> 0
sanitizeBoolean($test, 'string') --returns--> false
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 0
sanitizeBoolean($test, 'string', 0) --returns--> false
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = '1' --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 1 --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 0 --------------------------------------------
sanitizeBoolean($test) --returns--> 0
sanitizeBoolean($test, 'binary') --returns--> 0
sanitizeBoolean($test, 'string') --returns--> false
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 0
sanitizeBoolean($test, 'string', 0) --returns--> false
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = true --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 'true' --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = TRUE --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 'TRUE' --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 't' --------------------------------------------
sanitizeBoolean($test) --returns--> 1
sanitizeBoolean($test, 'binary') --returns--> 1
sanitizeBoolean($test, 'string') --returns--> true
sanitizeBoolean($test, 'boolean') --returns--> 1
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 1
sanitizeBoolean($test, 'string', 0) --returns--> true
sanitizeBoolean($test, 'boolean', 0) --returns--> 1
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 1
sanitizeBoolean($test, 'string', 1) --returns--> true
sanitizeBoolean($test, 'boolean', 1) --returns--> 1
----TEST $test = 'f' --------------------------------------------
sanitizeBoolean($test) --returns--> 0
sanitizeBoolean($test, 'binary') --returns--> 0
sanitizeBoolean($test, 'string') --returns--> false
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 0
sanitizeBoolean($test, 'string', 0) --returns--> false
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = false --------------------------------------------
sanitizeBoolean($test) --returns--> 0
sanitizeBoolean($test, 'binary') --returns--> 0
sanitizeBoolean($test, 'string') --returns--> false
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 0
sanitizeBoolean($test, 'string', 0) --returns--> false
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = 'false' --------------------------------------------
sanitizeBoolean($test) --returns--> 0
sanitizeBoolean($test, 'binary') --returns--> 0
sanitizeBoolean($test, 'string') --returns--> false
sanitizeBoolean($test, 'boolean') --returns-->
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 0
sanitizeBoolean($test, 'string', 0) --returns--> false
sanitizeBoolean($test, 'boolean', 0) --returns-->
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = 24 --------------------------------------------
sanitizeBoolean($test) --returns--> 24
sanitizeBoolean($test, 'binary') --returns--> 24
sanitizeBoolean($test, 'string') --returns--> 24
sanitizeBoolean($test, 'boolean') --returns--> 24
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 24
sanitizeBoolean($test, 'string', 0) --returns--> 24
sanitizeBoolean($test, 'boolean', 0) --returns--> 24
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->
----TEST $test = '25' --------------------------------------------
sanitizeBoolean($test) --returns--> 25
sanitizeBoolean($test, 'binary') --returns--> 25
sanitizeBoolean($test, 'string') --returns--> 25
sanitizeBoolean($test, 'boolean') --returns--> 25
---------NOT strict------------------
sanitizeBoolean($test, 'binary', 0) --returns--> 25
sanitizeBoolean($test, 'string', 0) --returns--> 25
sanitizeBoolean($test, 'boolean', 0) --returns--> 25
---------strict------------------
sanitizeBoolean($test, 'binary', 1) --returns--> 0
sanitizeBoolean($test, 'string', 1) --returns--> false
sanitizeBoolean($test, 'boolean', 1) --returns-->