summaryrefslogtreecommitdiff
path: root/includes/common.inc
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2010-01-06 21:39:07 +0000
committerDries Buytaert <dries@buytaert.net>2010-01-06 21:39:07 +0000
commit6f607b80cf64d0006fbe2b3a1b7c11e417d829b7 (patch)
treefe83aa381f47389edb23685848d24492d064f7d9 /includes/common.inc
parentda4c58c010e80e51881e004136322c97a5739f8c (diff)
downloadbrdo-6f607b80cf64d0006fbe2b3a1b7c11e417d829b7.tar.gz
brdo-6f607b80cf64d0006fbe2b3a1b7c11e417d829b7.tar.bz2
- Patch #280058 by sun, recidive: refactor drupal_map_assoc().
Diffstat (limited to 'includes/common.inc')
-rw-r--r--includes/common.inc17
1 files changed, 4 insertions, 13 deletions
diff --git a/includes/common.inc b/includes/common.inc
index b6b315b6e..683cb16b2 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -2993,20 +2993,11 @@ function drupal_exit($destination = NULL) {
* An associative array.
*/
function drupal_map_assoc($array, $function = NULL) {
- if (!isset($function)) {
- $result = array();
- foreach ($array as $value) {
- $result[$value] = $value;
- }
- return $result;
- }
- elseif (function_exists($function)) {
- $result = array();
- foreach ($array as $value) {
- $result[$value] = $function($value);
- }
- return $result;
+ $array = array_combine($array, $array);
+ if (is_callable($function)) {
+ $array = array_map($function, $array);
}
+ return $array;
}
/**