Convertir cadena en matriz asociativa con funciones de matriz
En PHP, a menudo surge la necesidad de transformar una cadena que contiene pares clave-valor en una matriz asociativa. Considere una cadena como "1-350,9-390.99", donde cada elemento está separado por un guión y una coma. El objetivo es crear una matriz asociativa donde el primer número de cada elemento se convierte en la clave y el segundo número se convierte en el valor.
Lograr esta conversión se puede realizar de manera eficiente utilizando las funciones de matriz integradas de PHP. El primer paso consiste en dividir la cadena en matrices individuales usando preg_split("/[-,]/", $input), que separa los números mediante guiones y comas. El resultado es una lista de submatrices, cada una de las cuales contiene una clave y un valor.
A continuación, usamos array_chunk para agrupar estas submatrices en partes de dos, asegurando que un elemento contenga la clave y el otro. el valor. Finalmente, array_column se emplea para extraer las claves y los valores en matrices separadas. El uso de array_combine en estas matrices produce la matriz asociativa deseada.
Fragmento de código:
$input = '1-350,9-390.99';
$chunks = array_chunk(preg_split('/[-,]/', $input), 2);
$result = array_combine(array_column($chunks, 0), array_column($chunks, 1));
Salida:
Array ( [1] => 350 [9] => 390.99 )
Este método convierte efectivamente la cadena en una matriz asociativa sin recurrir a bucles, lo que muestra el poder de las funciones de matriz de PHP.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3