array_column
En esta página
array_column
Devuelve los valores de una columna de un array de entrada
Descripción#
array_column(array $array, int $column_key, [int $index_key]): array
```php
`array_column` devuelve los valores de una columna de `array`, identificada por la clave `column_key`. Opcionalmente, se puede proporcionar un argumento `index_key` para indexar los valores en el array devuelto por los valores de la columna `index_key` del array de entrada.
## Parámetros
`array`
Un array multidimensional o un array de objetos a partir del cual se extrae una columna de valor. Si se proporciona un array de objetos, entonces las propiedades públicas pueden ser directamente extraídas. Para que las propiedades protegidas o privadas sean extraídas, la clase debe implementar las dos métodos mágicos `__get` y `__isset`.
`column_key`
La columna de valores a devolver. Este valor puede ser la clave entera de la columna que se desea recuperar, o bien el nombre de la clave para un array asociativo o el nombre de la propiedad. También puede valer `null` para devolver el array completo o los objetos (esto puede ser útil en conjunción con el argumento `index_key` para reindexar el array).
`index_key`
La columna a utilizar como índice/clave para el array devuelto. Este valor puede ser la clave entera de la columna, o el nombre de la clave. El valor es [cast](#language.types.array.key-casts) como de costumbre para las claves del array (sin embargo, anterior a PHP 8.0.0, los objetos que soportan una conversión en string también eran permitidos).
## Valores devueltos
Devuelve un array de valores que representan una sola columna desde el array de entrada.
## Historial de cambios
| Versión | Descripción |
|----|----|
| 8.0.0 | Los objetos en las columnas indicadas por el argumento `index_key` ya no se convertirán en string y lanzarán ahora una `TypeError` en su lugar. |
## Ejemplos
Recupera la columna de los nombres
El ejemplo anterior mostrará:
Array ( [0] => John [1] => Sally [2] => Jane [3] => Peter )
Recupera la columna de los apellidos, indexada por la columna "id"
El ejemplo anterior mostrará:
Array ( [2135] => Doe [3245] => Smith [5342] => Jones [5623] => Doe )
Recupera la columna de los nombres de usuario desde la propiedad pública "username" de un objeto
El ejemplo anterior mostrará:
Array ( [0] => user 1 [1] => user 2 [2] => user 3 )
Recupera la columna de nombres desde la propiedad privada "name" de un objeto utilizando los métodos mágicos `__isset` y `__get`
El ejemplo anterior mostrará:
Array ( [0] => Fred [1] => Jane [2] => John )
```php
Si __isset no está definido, entonces se devolverá un array vacío.