From 7f5d047e1fb142ba8bd2af5967d702a1eab94852 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Wed, 21 Sep 2011 22:07:11 -0500 Subject: [PATCH] continued adding comments to arr class. --- laravel/arr.php | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/laravel/arr.php b/laravel/arr.php index 2e4c869f..32aca743 100644 --- a/laravel/arr.php +++ b/laravel/arr.php @@ -42,6 +42,13 @@ public static function get($array, $key, $default = null) * * The same "dot" syntax used by the "get" method may be used here. * + * If no key is given to the method, the entire array will be replaced. + * + * + * // Set the $array['user']['name'] value on the array + * Arr::set($array, 'user.name', 'Taylor'); + * + * * @param array $array * @param string $key * @param mixed $value @@ -71,6 +78,14 @@ public static function set(&$array, $key, $value) /** * Return the first element in an array which passes a given truth test. * + * + * // Return the first array element that equals "Taylor" + * $value = Arr::first($array, function($k, $v) {return $v === 'Taylor';}); + * + * // Return a default value if no matching element is found + * $value = Arr::first($array, function($k, $v) {return $v === 'Taylor'}, 'Default'); + * + * * @param array $array * @param Closure $callback * @return mixed @@ -88,13 +103,21 @@ public static function first($array, $callback, $default = null) /** * Remove all array values that are contained within a given array of values. * + * + * // Remove all array values that are empty strings + * $array = Arr::without($array, ''); + * + * // Remove all array values that are "One", "Two", or "Three" + * $array = Arr::without($array, array('One', 'Two', 'Three')); + * + * * @param array $array * @param array $without * @return array */ public static function without($array, $without = array()) { - foreach ($array as $key => $value) + foreach ((array) $array as $key => $value) { if (in_array($value, $without)) unset($array[$key]); }