@@ 434-449 (lines=16) @@ | ||
431 | * @return array |
|
432 | * @since 2.0 |
|
433 | */ |
|
434 | public static function filterPrefixed($array, $prefix, $removePrefix = true) |
|
435 | { |
|
436 | $return = array(); |
|
437 | foreach ($array as $key => $val) |
|
438 | { |
|
439 | if (preg_match('/^' . $prefix . '/', $key)) |
|
440 | { |
|
441 | if ($removePrefix === true) |
|
442 | { |
|
443 | $key = preg_replace('/^' . $prefix . '/', '', $key); |
|
444 | } |
|
445 | $return[$key] = $val; |
|
446 | } |
|
447 | } |
|
448 | return $return; |
|
449 | } |
|
450 | ||
451 | /** |
|
452 | * Recursive version of PHP's array_filter() |
|
@@ 507-522 (lines=16) @@ | ||
504 | * @return array |
|
505 | * @since 2.0 |
|
506 | */ |
|
507 | public static function filterSuffixed($array, $suffix, $removeSuffix = true) |
|
508 | { |
|
509 | $return = array(); |
|
510 | foreach ($array as $key => $val) |
|
511 | { |
|
512 | if (preg_match('/' . $suffix . '$/', $key)) |
|
513 | { |
|
514 | if ($removeSuffix === true) |
|
515 | { |
|
516 | $key = preg_replace('/' . $suffix . '$/', '', $key); |
|
517 | } |
|
518 | $return[$key] = $val; |
|
519 | } |
|
520 | } |
|
521 | return $return; |
|
522 | } |
|
523 | ||
524 | /** |
|
525 | * Removes items from an array that match a key suffix. |