API15:JArrayHelper/getValue
From Joomla! Documentation
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.
Contents |
Description
Utility function to return a value from a named array or a specified default
[<! removed edit link to red link >]
<! removed transcluded page call, red link never existed >
Syntax
getValue(&$array, $name, $default=null, $type='')
| Parameter Name | Default Value | Description |
|---|---|---|
| &$array | $array A named array | |
| $name | $name The key to search for | |
| $default | null | $default The default value to give if no key found |
| $type | $type Return type for the variable (INT, FLOAT, STRING, WORD, BOOLEAN, ARRAY) |
Returns
mixed The value from the source array
Defined in
libraries/joomla/utilities/arrayhelper.php
Importing
jimport( 'joomla.utilities.arrayhelper' );
Source Body
function getValue(&$array, $name, $default=null, $type='') { // Initialize variables $result = null; if (isset ($array[$name])) { $result = $array[$name]; } // Handle the default case if (is_null($result)) { $result = $default; } // Handle the type constraint switch (strtoupper($type)) { case 'INT' : case 'INTEGER' : // Only use the first integer value @ preg_match('/-?[0-9]+/', $result, $matches); $result = @ (int) $matches[0]; break; case 'FLOAT' : case 'DOUBLE' : // Only use the first floating point value @ preg_match('/-?[0-9]+(\.[0-9]+)?/', $result, $matches); $result = @ (float) $matches[0]; break; case 'BOOL' : case 'BOOLEAN' : $result = (bool) $result; break; case 'ARRAY' : if (!is_array($result)) { $result = array ($result); } break; case 'STRING' : $result = (string) $result; break; case 'WORD' : $result = (string) preg_replace( '#\W#', '', $result ); break; case 'NONE' : default : // No casting necessary break; } return $result; }
[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >
Examples
<CodeExamplesForm />
