summaryrefslogtreecommitdiffstats
path: root/system/helpers/array_helper.php
diff options
context:
space:
mode:
Diffstat (limited to 'system/helpers/array_helper.php')
-rw-r--r--system/helpers/array_helper.php48
1 files changed, 44 insertions, 4 deletions
diff --git a/system/helpers/array_helper.php b/system/helpers/array_helper.php
index b7289900f..447ee1aa4 100644
--- a/system/helpers/array_helper.php
+++ b/system/helpers/array_helper.php
@@ -38,7 +38,7 @@
* @param array
* @param mixed
* @return mixed depends on what the array contains
- */
+ */
if ( ! function_exists('element'))
{
function element($item, $array, $default = FALSE)
@@ -49,7 +49,7 @@ if ( ! function_exists('element'))
}
return $array[$item];
- }
+ }
}
// ------------------------------------------------------------------------
@@ -60,7 +60,7 @@ if ( ! function_exists('element'))
* @access public
* @param array
* @return mixed depends on what the array contains
- */
+ */
if ( ! function_exists('random_element'))
{
function random_element($array)
@@ -70,9 +70,49 @@ if ( ! function_exists('random_element'))
return $array;
}
return $array[array_rand($array)];
- }
+ }
}
+// --------------------------------------------------------------------
+
+/**
+ * Elements
+ *
+ * Returns only the array items specified. Will return a default value if
+ * it is not set.
+ *
+ * @access public
+ * @param array
+ * @param array
+ * @param mixed
+ * @return mixed depends on what the array contains
+ */
+if ( ! function_exists('elements'))
+{
+ function elements($items, $array, $default = FALSE)
+ {
+ $return = array();
+
+ if ( ! is_array($items))
+ {
+ $items = array($items);
+ }
+
+ foreach ($items as $item)
+ {
+ if (isset($array[$item]))
+ {
+ $return[$item] = $array[$item];
+ }
+ else
+ {
+ $return[$item] = $default;
+ }
+ }
+
+ return $return;
+ }
+}
/* End of file array_helper.php */
/* Location: ./system/helpers/array_helper.php */ \ No newline at end of file