Convertir cualquier valor a un array

Código PHP

PHP – Conversiones – isArray

Esta función convierte un valor integer, string, boolean o cualqueir otro valor a un array.

La usaremos en funciones que necesitamos forzosamente que un parámetro sea un array, como por ejemplo en los bucles foreach donde el objetivo es recorrer arrays.

Así de esta forma nos evitaremos el generar un warning si el parámetro en cuestión no es un array.

/**
 * Class HelperConvert
 */
abstract class HelperConvert
{

    /**
     * Convierte un valor a un array.
     * Siempre devuelve un array.
     *
     * @param $element
     *
     * @return array
     * @see HelperValidate::isEmpty()
     */
    public static function toArray( $element ) : array
    {
        if ( is_array( $element ) ) {
            return $element;

        } elseif ( HelperValidate::isEmpty( $element ) ) {
            // No aseguramos que no tenga valor
            return [];

        } elseif ( is_object( $element ) ) {

            return ( array )$element;

        } else {
            return array( $element );
        }
    }
}

Funciones relacionadas

Ejemplos de varias conversiones:

$arr = null;
$tmp = HelperConvert::toArray($arr); // [0]

$arr = 'OK';
$tmp = HelperConvert::toArray($arr); // ['OK'] [0 => 'OK']

$arr = 123;
$tmp = HelperConvert::toArray($arr); // [123] [ 0 => 123]

$arr = [];
$tmp = HelperConvert::toArray($arr); // [0]

$arr = true;
$tmp = HelperConvert::toArray($arr); // [true] [ 0 => true ]

$arr = [1, 2, 3, 4];
$tmp = HelperConvert::toArray($arr); // [1,2,3,4]

$arr = [1 => 'a', 2 => 'b', 3, 4];
$tmp = HelperConvert::toArray($arr); // [1 => 'a',2 => 'b',3,4];