final public function keys($search_value = null, $strict = false)
	{
		if (isset($search_value)) {
			return static::createFromArray(array_keys($this->{self::MAGIC_PROPERTY}, $search_value, $strict));
		} else {
			return static::createFromArray(array_keys($this->{self::MAGIC_PROPERTY}));
		}
	}
final public function keys($search_value = null, $strict = false)
	{
		if (isset($search_value)) {
			return static::createFromArray(array_keys($this->{self::MAGIC_PROPERTY}, $search_value, $strict));
		} else {
			return static::createFromArray(array_keys($this->{self::MAGIC_PROPERTY}));
		}
	}
final public function keys ( $ search_value = null , $ strict = false ) { if ( isset ( $ search_value ) ) { return static :: createFromArray ( array_keys ( $ this -> { self :: MAGIC_PROPERTY } , $ search_value , $ strict ) ) ; } else { return static :: createFromArray ( array_keys ( $ this -> { self :: MAGIC_PROPERTY } ) ) ; } }
Return all the keys or a subset of the keys of an array
@param  mixed  $search_value If specified, then only keys containing these values are returned.
@param  bool   $strict       Determines if strict comparison (===) should be used during the search.
@return array                Returns an array of all the keys in array
Return all the keys or a subset of the keys of an array