@@ 168-187 (lines=20) @@ | ||
165 | } |
|
166 | } |
|
167 | ||
168 | if ( ! function_exists('array_first')) |
|
169 | { |
|
170 | /** |
|
171 | * Return the first element in an array passing a given truth test. |
|
172 | * |
|
173 | * @param array $array |
|
174 | * @param \Closure $callback |
|
175 | * @param mixed $default |
|
176 | * @return mixed |
|
177 | */ |
|
178 | function array_first($array, $callback, $default = null) |
|
179 | { |
|
180 | foreach ($array as $key => $value) |
|
181 | { |
|
182 | if (call_user_func($callback, $key, $value)) return $value; |
|
183 | } |
|
184 | ||
185 | return value($default); |
|
186 | } |
|
187 | } |
|
188 | ||
189 | if ( ! function_exists('array_last')) |
|
190 | { |
|
@@ 369-387 (lines=19) @@ | ||
366 | } |
|
367 | } |
|
368 | ||
369 | if ( ! function_exists('array_pull')) |
|
370 | { |
|
371 | /** |
|
372 | * Get a value from the array, and remove it. |
|
373 | * |
|
374 | * @param array $array |
|
375 | * @param string $key |
|
376 | * @param mixed $default |
|
377 | * @return mixed |
|
378 | */ |
|
379 | function array_pull(&$array, $key, $default = null) |
|
380 | { |
|
381 | $value = get($array, $key, $default); |
|
382 | ||
383 | forget($array, $key); |
|
384 | ||
385 | return $value; |
|
386 | } |
|
387 | } |
|
388 | ||
389 | if ( ! function_exists('array_set')) |
|
390 | { |
|
@@ 1045-1064 (lines=20) @@ | ||
1042 | } |
|
1043 | } |
|
1044 | ||
1045 | if ( ! function_exists('first')) |
|
1046 | { |
|
1047 | /** |
|
1048 | * Return the first element in an array passing a given truth test. |
|
1049 | * |
|
1050 | * @param array $array |
|
1051 | * @param \Closure $callback |
|
1052 | * @param mixed $default |
|
1053 | * @return mixed |
|
1054 | */ |
|
1055 | function first($array, $callback, $default = null) |
|
1056 | { |
|
1057 | foreach ($array as $key => $value) |
|
1058 | { |
|
1059 | if (call_user_func($callback, $key, $value)) return $value; |
|
1060 | } |
|
1061 | ||
1062 | return value($default); |
|
1063 | } |
|
1064 | } |
|
1065 | ||
1066 | if ( ! function_exists('forget')) |
|
1067 | { |