Remove all the spaces from the start and the end of each element from an array (array_map
):
$array_trimmed = array_map('trim', $array);
Alternatives:
// Mala idea. PHP tiene leaks desde hace mucho tiempo con foreach + &.
$array_trimmed = array(); foreach ($array as $v) $array_trimmed[] = trim($v);
foreach ($array_trimmed as &$v) $v = trim($v);
Get a ensured list of integers (IDs for example) in order to insert in a query
inside an IN()
:
$array_str_list = implode(',', array_map('intval', $array));
Filter an array obtaining solely numeric values (array_filter
):
$array_numbers = array_filter($array, 'is_numeric');
To create values to insert using PDO (array_map
):
$query_insert_values = implode(",", array_map(array($pdo, 'quote'), $values));
To create assignments in an update using PDO (array_map
using two arrays):
$query_set = implode(',', array_map(function($k, $v) use ($pdo) {
return '`' . implode('`,`', explode('.', $k)) . '`=' . $pdo->quote($v);
}, array_keys($array), array_values($array)));
Obtaining a list of unique elements using an array that contains an
indeterminate number of arrays (array_reduce
):
$array_unique = array_unique(array_reduce($arrays, 'array_merge', array()));
Spanish
Quitar todos los espacios de principio y de final de cada elemento en un array (array_map):
$array_trimmed = array_map('trim', $array);
Alternativas:
// Mala idea. PHP tiene leaks desde hace mucho tiempo con foreach + &.
$array_trimmed = array(); foreach ($array as $v) $array_trimmed[] = trim($v);
foreach ($array_trimmed as &$v) $v = trim($v);
Obtener una lista segura de enteros (por ejemplo IDs) para insertar en una query dentro de un IN().
$array_str_list = implode(',', array_map('intval', $array));
Filtrar un array obteniendo únicamente valores numéricos (array_filter):
$array_numbers = array_filter($array, 'is_numeric');
Para creación de valores para un insert con pdo (array_map):
$query_insert_values = implode(",", array_map(array($pdo, 'quote'), $values));
Para creación de asignaciones en un update con pdo (array_map con dos arrays):
$query_set = implode(',', array_map(function($k, $v) use ($pdo) {
return '`' . implode('`,`', explode('.', $k)) . '`=' . $pdo->quote($v);
}, array_keys($array), array_values($array)));
Obtener una lista de elementos únicos usando un array que contiene un número indeterminado de arrays (array_reduce):
$array_unique = array_unique(array_reduce($arrays, 'array_merge', array()));