Función arrayval
En la biblioteca estándar de PHP no existe la función arrayval, pero se puede implementar una funcionalidad similar de forma independiente. A continuación se presenta un ejemplo de implementación que convierte cualquier valor en un array: si el valor ya es un array, se devuelve sin cambios, para otros tipos se crea un array con un elemento.
Implementación de la función
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
?>
Ejemplo de uso
Convirtamos una cadena en un array usando nuestra función:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval('abcde');
print_r($res);
?>
Resultado de la ejecución del código:
['abcde']
Ejemplo de uso
Intentemos convertir un número:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval(123);
print_r($res);
?>
Resultado de la ejecución del código:
[123]
Ejemplo de uso
Comprobemos el funcionamiento con un array:
<?php
function arrayval($value): array {
return is_array($value) ? $value : [$value];
}
$res = arrayval([1, 2, 3]);
print_r($res);
?>
Resultado de la ejecución del código:
[1, 2, 3]
Soluciones alternativas
En PHP existen otras formas de convertir a array:
<?php
// Uso de la conversión de tipo (array)
$array = (array)'string';
print_r($array); // ['string']
// Para objetos la conversión de tipo funciona de manera diferente
$obj = new stdClass();
$obj->prop = 'value';
$array = (array)$obj;
print_r($array); // ['prop' => 'value']
?>