"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo transponer y formatear una matriz 2D en PHP?

¿Cómo transponer y formatear una matriz 2D en PHP?

Publicado el 2024-11-09
Navegar:996

How to Transpose and Format a 2D Array in PHP?

Transponer y formatear matrices 2D

En el ámbito de la manipulación de datos, se hace necesario remodelar y formatear matrices para una presentación eficiente. Considere la tarea de transponer una matriz bidimensional y unir sus elementos con delimitadores específicos.

Dada la siguiente matriz:

01 03 02 15
05 04 06 10
07 09 08 11
12 14 13 16

El objetivo es convertirlo a una cadena con el siguiente formato:

01,05,07,12|03,04,09,14|02,06,08,13|15,10,11,16

donde las columnas se convierten en filas y los elementos dentro de cada fila están separados por comas, con las filas separadas por barras verticales.

Solución usando PHP

Para realizar esta tarea en PHP, podemos emplear los siguientes pasos:

  1. Inicializar una matriz vacía $tmpArr para almacenar las filas formateadas.
  2. Repita cada submatriz en la matriz $array original.
  3. Para cada submatriz, concatene sus elementos en una sola cadena usando implode(',', $sub) y agréguelo a $tmpArr.
  4. Finalmente, concatenamos los elementos en $tmpArr en una cadena usando implode('|', $tmpArr) para obtener el resultado deseado.

Aquí está el fragmento de código:

$array = array(
  array('01', '03', '02', '15'),
  array('05', '04', '06', '10'),
  array('07', '09', '08', '11'),
  array('12', '14', '13', '16')
);

$tmpArr = array();
foreach ($array as $sub) {
  $tmpArr[] = implode(',', $sub);
}
$result = implode('|', $tmpArr);

echo $result;
Último tutorial Más>

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