Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengubah Tatasusunan Berbilang Dimensi daripada Kolumnar kepada Struktur Rowar?

Bagaimana untuk Mengubah Tatasusunan Berbilang Dimensi daripada Kolumnar kepada Struktur Rowar?

Susan Sarandon
Susan Sarandonasal
2024-10-26 15:11:30338semak imbas

How to Transform a Multidimensional Array from Columnar to Rowar Structure?

Menukarkan Struktur Data Lajur kepada Struktur Rowar dalam Tatasusunan Berbilang Dimensi

Dalam pengaturcaraan, mungkin perlu menukar tatasusunan berbilang dimensi dengan lajur data menjadi satu dengan baris data yang digabungkan. Transformasi ini boleh dicapai dengan memutarkan struktur tatasusunan.

Pertimbangkan tatasusunan bersekutu berikut yang mewakili data lajur:

<code class="php">$where = array(
    'id' => array(
        12,
        13,
        14
    ),
    'date' => array(
        '1999-06-12',
        '2000-03-21',
        '2006-09-31'
    )
);</code>

Output yang diingini ialah tatasusunan berbilang dimensi dengan baris data yang digabungkan, seperti yang dilihat di bawah:

<code class="php">$comb = array(
    array(12, '1999-06-12'),
    array(13, '2000-03-21'),
    array(14, '2006-09-31')
);</code>

Transformasi ini boleh dicapai menggunakan gabungan teknik_lajur tatasusunan dan gelung. Fungsi array_column mengekstrak lajur yang ditentukan daripada tatasusunan, manakala gelung berulang melalui setiap lajur untuk mencipta format baris yang diingini.

Berikut ialah coretan kod untuk mencapai ini:

<code class="php">$result = array();

foreach($where['id'] as $k => $v)
{
  $result[] = array_column($where, $k);
}</code>

Kod ini lelaran melalui lajur id dan menggunakan array_column untuk mengekstrak nilai yang sepadan daripada lajur tarikh. Tatasusunan $result yang terhasil mengandungi baris data yang digabungkan, memenuhi keperluan output yang dijangkakan.

Atas ialah kandungan terperinci Bagaimana untuk Mengubah Tatasusunan Berbilang Dimensi daripada Kolumnar kepada Struktur Rowar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn