Joomla Platform  13.1
Documentation des API du framework Joomla Platform
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Pages
Référence de la classe JArrayHelper

Liste de tous les membres

Fonctions membres publiques statiques

static toInteger (&$array, $default=null)
static toObject (&$array, $class= 'stdClass')
static toString ($array=null, $inner_glue= '=', $outer_glue= ' ', $keepOuterKey=false)
static fromObject ($p_obj, $recurse=true, $regex=null)
static getColumn (&$array, $index)
static getValue (&$array, $name, $default=null, $type= '')
static invert ($array)
static isAssociative ($array)
static pivot ($source, $key=null)
static sortObjects (&$a, $k, $direction=1, $caseSensitive=true, $locale=false)
static arrayUnique ($myArray)

Fonctions membres protégées statiques

static _fromObject ($item, $recurse, $regex)
static _sortObjects (&$a, &$b)

Attributs protégés statiques

static $sortCase
static $sortDirection
static $sortKey
static $sortLocale

Description détaillée

Définition à la ligne 19 du fichier arrayhelper.php.


Documentation des fonctions membres

static JArrayHelper::_fromObject (   $item,
  $recurse,
  $regex 
)
staticprotected

Utility function to map an object or array to an array

Paramètres:
mixed$itemThe source object or array
boolean$recurseTrue to recurse through multi-level objects
string$regexAn optional regular expression to match on field names
Renvoie:
array The array mapped from the given object
Depuis:
11.1

Définition à la ligne 196 du fichier arrayhelper.php.

{
if (is_object($item))
{
$result = array();
foreach (get_object_vars($item) as $k => $v)
{
if (!$regex || preg_match($regex, $k))
{
if ($recurse)
{
$result[$k] = self::_fromObject($v, $recurse, $regex);
}
else
{
$result[$k] = $v;
}
}
}
}
elseif (is_array($item))
{
$result = array();
foreach ($item as $k => $v)
{
$result[$k] = self::_fromObject($v, $recurse, $regex);
}
}
else
{
$result = $item;
}
return $result;
}
static JArrayHelper::_sortObjects ( $a,
$b 
)
staticprotected

Callback function for sorting an array of objects on a key

Paramètres:
array&$aAn array of objects
array&$bAn array of objects
Renvoie:
integer Comparison status
Voir également:
JArrayHelper::sortObjects()
Depuis:
11.1

Définition à la ligne 533 du fichier arrayhelper.php.

Références JString\strcasecmp(), et JString\strcmp().

{
for ($i = 0, $count = count($key); $i < $count; $i++)
{
if (isset(self::$sortDirection[$i]))
{
$direction = self::$sortDirection[$i];
}
if (isset(self::$sortCase[$i]))
{
$caseSensitive = self::$sortCase[$i];
}
if (isset(self::$sortLocale[$i]))
{
$locale = self::$sortLocale[$i];
}
$va = $a->$key[$i];
$vb = $b->$key[$i];
if ((is_bool($va) || is_numeric($va)) && (is_bool($vb) || is_numeric($vb)))
{
$cmp = $va - $vb;
}
elseif ($caseSensitive)
{
$cmp = JString::strcmp($va, $vb, $locale);
}
else
{
$cmp = JString::strcasecmp($va, $vb, $locale);
}
if ($cmp > 0)
{
return $direction;
}
if ($cmp < 0)
{
return -$direction;
}
}
return 0;
}

+ Voici le graphe d'appel pour cette fonction :

static JArrayHelper::arrayUnique (   $myArray)
static

Multidimensional array safe unique test

Paramètres:
array$myArrayThe array to make unique.
Renvoie:
array
Voir également:
http://php.net/manual/en/function.array-unique.php
Depuis:
11.2

Définition à la ligne 595 du fichier arrayhelper.php.

Référencé par JUpdater\findUpdates().

{
if (!is_array($myArray))
{
return $myArray;
}
foreach ($myArray as &$myvalue)
{
$myvalue = serialize($myvalue);
}
$myArray = array_unique($myArray);
foreach ($myArray as &$myvalue)
{
$myvalue = unserialize($myvalue);
}
return $myArray;
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::fromObject (   $p_obj,
  $recurse = true,
  $regex = null 
)
static

Utility function to map an object to an array

Paramètres:
object$p_objThe source object
boolean$recurseTrue to recurse through multi-level objects
string$regexAn optional regular expression to match on field names
Renvoie:
array The array mapped from the given object
Depuis:
11.1

Définition à la ligne 173 du fichier arrayhelper.php.

Référencé par JModelLegacy\loadHistory().

{
if (is_object($p_obj))
{
return self::_fromObject($p_obj, $recurse, $regex);
}
else
{
return null;
}
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::getColumn ( $array,
  $index 
)
static

Extracts a column from an array of arrays or objects

Paramètres:
array&$arrayThe source array
string$indexThe index of the column or name of object property
Renvoie:
array Column of values from the source array
Depuis:
11.1

Définition à la ligne 243 du fichier arrayhelper.php.

{
$result = array();
if (is_array($array))
{
foreach ($array as &$item)
{
if (is_array($item) && isset($item[$index]))
{
$result[] = $item[$index];
}
elseif (is_object($item) && isset($item->$index))
{
$result[] = $item->$index;
}
// Else ignore the entry
}
}
return $result;
}
static JArrayHelper::getValue ( $array,
  $name,
  $default = null,
  $type = '' 
)
static

Utility function to return a value from a named array or a specified default

Paramètres:
array&$arrayA named array
string$nameThe key to search for
mixed$defaultThe default value to give if no key found
string$typeReturn type for the variable (INT, FLOAT, STRING, WORD, BOOLEAN, ARRAY)
Renvoie:
mixed The value from the source array
Depuis:
11.1

Définition à la ligne 277 du fichier arrayhelper.php.

Référencé par JModelAdmin\batch(), JUser\bind(), JModelForm\loadForm(), JModelList\loadForm(), et JControllerAdmin\publish().

{
$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;
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::invert (   $array)
static

Takes an associative array of arrays and inverts the array keys to values using the array values as keys.

Example: $input = array( 'New' => array('1000', '1500', '1750'), 'Used' => array('3000', '4000', '5000', '6000') ); $output = JArrayHelper::invert($input);

Output would be equal to: $output = array( '1000' => 'New', '1500' => 'New', '1750' => 'New', '3000' => 'Used', '4000' => 'Used', '5000' => 'Used', '6000' => 'Used' );

Paramètres:
array$arrayThe source array.
Renvoie:
array The inverted array.
Depuis:
12.3

Définition à la ligne 364 du fichier arrayhelper.php.

{
$return = array();
foreach ($array as $base => $values)
{
if (!is_array($values))
{
continue;
}
foreach ($values as $key)
{
// If the key isn't scalar then ignore it.
if (is_scalar($key))
{
$return[$key] = $base;
}
}
}
return $return;
}
static JArrayHelper::isAssociative (   $array)
static

Method to determine if an array is an associative array.

Paramètres:
array$arrayAn array to test.
Renvoie:
boolean True if the array is an associative array.
Depuis:
11.1

Définition à la ligne 396 du fichier arrayhelper.php.

Référencé par JForm\bind(), JRegistry\bindData(), et JForm\bindLevel().

{
if (is_array($array))
{
foreach (array_keys($array) as $k => $v)
{
if ($k !== $v)
{
return true;
}
}
}
return false;
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::pivot (   $source,
  $key = null 
)
static

Pivots an array to create a reverse lookup of an array of scalars, arrays or objects.

Paramètres:
array$sourceThe source array.
string$keyWhere the elements of the source array are objects or arrays, the key to pivot on.
Renvoie:
array An array of arrays pivoted either on the value of the keys, or an individual key of an object or array.
Depuis:
11.3

Définition à la ligne 422 du fichier arrayhelper.php.

{
$result = array();
$counter = array();
foreach ($source as $index => $value)
{
// Determine the name of the pivot key, and its value.
if (is_array($value))
{
// If the key does not exist, ignore it.
if (!isset($value[$key]))
{
continue;
}
$resultKey = $value[$key];
$resultValue = &$source[$index];
}
elseif (is_object($value))
{
// If the key does not exist, ignore it.
if (!isset($value->$key))
{
continue;
}
$resultKey = $value->$key;
$resultValue = &$source[$index];
}
else
{
// Just a scalar value.
$resultKey = $value;
$resultValue = $index;
}
// The counter tracks how many times a key has been used.
if (empty($counter[$resultKey]))
{
// The first time around we just assign the value to the key.
$result[$resultKey] = $resultValue;
$counter[$resultKey] = 1;
}
elseif ($counter[$resultKey] == 1)
{
// If there is a second time, we convert the value into an array.
$result[$resultKey] = array(
$result[$resultKey],
$resultValue,
);
$counter[$resultKey]++;
}
else
{
// After the second time, no need to track any more. Just append to the existing array.
$result[$resultKey][] = $resultValue;
}
}
unset($counter);
return $result;
}
static JArrayHelper::sortObjects ( $a,
  $k,
  $direction = 1,
  $caseSensitive = true,
  $locale = false 
)
static

Utility function to sort an array of objects on a given field

Paramètres:
array&$aAn array of objects
mixed$kThe key (string) or a array of key to sort on
mixed$directionDirection (integer) or an array of direction to sort in [1 = Ascending] [-1 = Descending]
mixed$caseSensitiveBoolean or array of booleans to let sort occur case sensitive or insensitive
mixed$localeBoolean or array of booleans to let sort occur using the locale language or not
Renvoie:
array The sorted array of objects
Depuis:
11.1

Définition à la ligne 500 du fichier arrayhelper.php.

{
if (!is_array($locale) || !is_array($locale[0]))
{
$locale = array($locale);
}
self::$sortCase = (array) $caseSensitive;
self::$sortDirection = (array) $direction;
self::$sortKey = (array) $k;
self::$sortLocale = $locale;
usort($a, array(__CLASS__, '_sortObjects'));
self::$sortCase = null;
self::$sortDirection = null;
self::$sortKey = null;
self::$sortLocale = null;
return $a;
}
static JArrayHelper::toInteger ( $array,
  $default = null 
)
static

Function to convert array to integer values

Paramètres:
array&$arrayThe source array to convert
mixed$defaultA default value (int|array) to assign if $array is not an array
Renvoie:
void
Depuis:
11.1

Définition à la ligne 63 du fichier arrayhelper.php.

Référencé par JModelAdmin\batch(), JTableUser\bind(), JControllerAdmin\delete(), JForm\filterField(), JAccess\getGroupsByUser(), JAccess\getUsersByGroup(), JTableExtension\publish(), JControllerAdmin\publish(), JTableContent\publish(), JTableNested\publish(), JControllerAdmin\saveorder(), JControllerAdmin\saveOrderAjax(), et JUserHelper\setUserGroups().

{
if (is_array($array))
{
foreach ($array as $i => $v)
{
$array[$i] = (int) $v;
}
}
else
{
if ($default === null)
{
$array = array();
}
elseif (is_array($default))
{
self::toInteger($default, null);
$array = $default;
}
else
{
$array = array((int) $default);
}
}
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::toObject ( $array,
  $class = 'stdClass' 
)
static

Utility function to map an array to a stdClass object.

Paramètres:
array&$arrayThe array to map.
string$className of the class to create
Renvoie:
object The object mapped from the given array
Depuis:
11.1

Définition à la ligne 100 du fichier arrayhelper.php.

Référencé par JModelAdmin\getItem().

{
$obj = null;
if (is_array($array))
{
$obj = new $class;
foreach ($array as $k => $v)
{
if (is_array($v))
{
$obj->$k = self::toObject($v, $class);
}
else
{
$obj->$k = $v;
}
}
}
return $obj;
}

+ Voici le graphe des appelants de cette fonction :

static JArrayHelper::toString (   $array = null,
  $inner_glue = '=',
  $outer_glue = ' ',
  $keepOuterKey = false 
)
static

Utility function to map an array to a string.

Paramètres:
array$arrayThe array to map.
string$inner_glueThe glue (optional, defaults to '=') between the key and the value.
string$outer_glueThe glue (optional, defaults to ' ') between array elements.
boolean$keepOuterKeyTrue if final key should be kept.
Renvoie:
string The string mapped from the given array
Depuis:
11.1

Définition à la ligne 135 du fichier arrayhelper.php.

Référencé par JDocumentRendererHead\fetchHead().

{
$output = array();
if (is_array($array))
{
foreach ($array as $key => $item)
{
if (is_array($item))
{
if ($keepOuterKey)
{
$output[] = $key;
}
// This is value is an array, go and do it again!
$output[] = self::toString($item, $inner_glue, $outer_glue, $keepOuterKey);
}
else
{
$output[] = $key . $inner_glue . '"' . $item . '"';
}
}
}
return implode($outer_glue, $output);
}

+ Voici le graphe des appelants de cette fonction :


Documentation des données membres

JArrayHelper::$sortCase
staticprotected

Définition à la ligne 27 du fichier arrayhelper.php.

JArrayHelper::$sortDirection
staticprotected

Définition à la ligne 35 du fichier arrayhelper.php.

JArrayHelper::$sortKey
staticprotected

Définition à la ligne 43 du fichier arrayhelper.php.

JArrayHelper::$sortLocale
staticprotected

Définition à la ligne 51 du fichier arrayhelper.php.


La documentation de cette classe a été générée à partir du fichier suivant :