indexRowsByColumn()
indexRowsByColumn(array $table, integer|string $column, boolean $delete_column = false) : array
Devuelve una copia de la tabla <var>$tabla</var>, pero con los índices de las filas
dados por los valores de una de las columnas.
Tener en cuenta que:
- Si la columna indicada no contiene valores únicos, la tabla resultado
sólo va a contener la última filas de cada grupo de valores repetidos.
- Si la columna indicada contiene valores que no se puedan usar como clave
en un array, la invocación va a producir un error.
- Si existen filas que no contengan la columna indicada, se eliminan del
resultado.
Ejemplos:
$table = array(
array('a' => 'v'),
array('a' => 'w'),
array('a' => 'x', 'b' => 42),
array('a' => 'y', 'b' => 12),
array('a' => 'z', 'b' => 42),
);
XgapTableArray::indexRowsByColumn($table, 'a', true) ==
array(
'v' => array(),
'w' => array(),
'x' => array('b' => 42),
'y' => array('b' => 12),
'z' => array('b' => 42)
);
XgapTableArray::indexRowsByColumn($table, 'b', false) ==
array(
12 => array('a' => 'y', 'b' => 12),
42 => array('a' => 'z', 'b' => 42)
);
Parameters
array |
$table |
la tabla original |
integer|string |
$column |
columna a usar para los índices de las filas |
boolean |
$delete_column |
¿se debe eliminar del resultado la columna usada como índice? |
Returns
array