| @@ 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 | { | |