A helper function for retrieving a value from an object or array

I'm a sucker for neat little utility functions that make my life as a developer so much simpler. Here's one I use on a regular basis. It has earned a place in my general_helper file, next to the dump functions.

Doing isset() dozens of times in every view file really gets on my nerves. So here's a helper function I use on a regular basis. I posted the code below, but you can find the latest version as a gist on Github.


 * Return the value for a key in an array or a property in an object.
 * Typical usage:
 * $object->foo = 'Bar';
 * echo get_key($object, 'foo');
 * $array['baz'] = 'Bat';
 * echo get_key($array, 'baz');
 * @param mixed $haystack
 * @param string $needle
 * @param mixed $default_value The value if key could not be found.
 * @return mixed
function get_key ($haystack, $needle, $default_value = '')
	if (is_array($haystack)) {
		// We have an array. Find the key.
        return isset($haystack[$needle]) ? $haystack[$needle] : $default_value;
    else {
    	// If it's not an array it must be an object
    	return isset($haystack->$needle) ? $haystack->$needle : $default_value;