Tengo una matriz que obtengo de un formulario con muchos campos, necesito ordenar esos campos en una matriz y esa matriz en la matriz "principal". Publicaré lo que tengo y lo que necesito obtener. LO QUE TENGO:
Array ( [perfil_area1] => Array ( [0] => a2 [1] => a3 ) [perfil_years] => Array ( [0] => 2 [1] => 4 ) [perfil_function] => Array ( [0] => f1 [1] => f4 ) [perfil_obs] => Array ( [0] => teste1 [1] => teste2 ) [perfil_company] => Array ( [0] => emp1 [1] => emp2 ) )Esto es lo que necesito para poder convertirlo en una consulta: Lo que necesito
Array ( [0] => ( [perfil_area1] => a2 [perfil_years] => 2 [perfil_function] => f1 [perfil_obs] => teste1 [perfil_company] => emp1 ) [1] => ( [perfil_area1] => emp2 [perfil_years] => 2 [perfil_function] => f4 [perfil_obs] => 4 [perfil_company] => a3 ) )He intentado con 2 foreach pero no logré hacerlo. He leído Crear una matriz multidimensional en un bucle , ¿cómo crear una matriz multidimensional usando un bucle foreach en php? , cree una matriz multidimensional usando un bucle foreach , convirtiendo una matriz de una a multidimensional en función de los valores de ID de los padres y algunos más, pero todavía no puedo hacerlo. ¿Algún consejo sobre cómo crearlo?
Solo necesita recorrer la matriz de entrada y construir la nueva matriz
$new = []; foreach ($in as $key=>$arr) { $new[0][$key] = $arr[0]; $new[1][$key] = $arr[1]; }<?php $result = []; for ($i=0; $i<count(reset($array)); $i++) { $result[] = array_combine(array_keys($array), array_column($array, $i)); }Lea el manual para obtener más detalles sobre array_combine() , array_keys() y array_column() .