Skip to content

Instantly share code, notes, and snippets.

@mjangda
Created April 29, 2011 06:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mjangda/947919 to your computer and use it in GitHub Desktop.
Save mjangda/947919 to your computer and use it in GitHub Desktop.
Utility functions to help grab elements from arrays and objects, which some additions for handling $_REQUEST, $_POST, and $_GET as well
<?php
function get_value_or_default( $var, $object, $default = '', $sanitize_callback = '' ) {
if( is_object( $object ) )
$value = ! empty( $object->$var ) ? $object->$var : $default;
elseif( is_array( $object ) )
$value = ! empty( $object[$var] ) ? $object[$var] : $default;
else
$value = $default;
if( is_callable( $sanitize_callback ) ) {
if( is_array( $value ) )
$value = array_map( $sanitize_callback, $value );
else
$value = call_user_func( $sanitize_callback, $value );
}
return $value;
}
function get_request_var( $var, $default = '', $sanitize_callback = '' ) {
return get_value_or_default( $var, $_REQUEST, $default, $sanitize_callback );
}
function get_get_var( $var, $default = '', $sanitize_callback = '' ) {
return get_value_or_default( $var, $_GET, $default, $sanitize_callback );
}
function get_post_var( $var, $default = '', $sanitize_callback = '' ) {
return get_value_or_default( $var, $_POST, $default, $sanitize_callback );
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment