Rumah >pembangunan bahagian belakang >masalah PHP >php penukaran tatasusunan dua dimensi

php penukaran tatasusunan dua dimensi

WBOY
WBOYasal
2023-05-23 09:36:37546semak imbas

Dalam pengaturcaraan PHP, tatasusunan ialah struktur data yang sangat biasa digunakan. Tatasusunan dua dimensi ialah jenis tatasusunan khas Ia mengandungi berbilang tatasusunan biasa Setiap tatasusunan ialah satu baris atau lajur dan terdiri daripada satu set data tersusun. Apabila sebenarnya menulis kod, kita mungkin perlu menukar tatasusunan dua dimensi. Oleh itu, artikel ini akan memperkenalkan kaedah penukaran tatasusunan dua dimensi dalam PHP dan memberikan contoh kod yang sepadan.

  1. Tukar tatasusunan dua dimensi kepada tatasusunan satu dimensi

Tukar tatasusunan dua dimensi kepada tatasusunan satu dimensi, iaitu meringkaskan semua dalamannya elemen ke dalam tatasusunan yang sama. Ini boleh dicapai menggunakan fungsi array_merge() yang disediakan dalam PHP. Fungsi ini mengambil dua atau lebih tatasusunan sebagai argumen dan menggabungkannya menjadi tatasusunan baharu. Berikut ialah contoh mudah:

$array = array(
    array('a', 'b'),
    array('c', 'd')
);

$new_array = call_user_func_array('array_merge', $array);

print_r($new_array);

Hasil keluaran:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
  1. Tukar tatasusunan satu dimensi kepada tatasusunan dua dimensi

Tukar tatasusunan satu dimensi Untuk tatasusunan dua dimensi, anda perlu menentukan panjang setiap subarray. Memandangkan panjang tatasusunan satu dimensi mungkin berubah, kita perlu terlebih dahulu mengira panjang subarray dalam tatasusunan baharu dan membahagikan elemen dalam tatasusunan asal kepada subarray ini. Berikut ialah contoh:

$array = array('a', 'b', 'c', 'd', 'e', 'f');
$chunk_size = 2;

$new_array = array_chunk($array, $chunk_size);

print_r($new_array);

Hasil keluaran:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => Array
        (
            [0] => c
            [1] => d
        )

    [2] => Array
        (
            [0] => e
            [1] => f
        )

)
  1. Tukar baris dan lajur tatasusunan dua dimensi

Tukar baris bagi Pertukaran tatasusunan dua dimensi dengan lajur, iaitu, baris dalam tatasusunan asal digunakan sebagai lajur tatasusunan baharu, dan lajur digunakan sebagai baris tatasusunan baharu. Proses ini boleh dilaksanakan menggunakan fungsi array_map() yang disediakan dalam PHP. Fungsi ini menerima satu atau lebih tatasusunan sebagai parameter dan fungsi panggil balik yang akan digunakan untuk memproses setiap elemen dalam tatasusunan. Berikut ialah contoh:

$array = array(
    array('a', 'b', 'c'),
    array('d', 'e', 'f'),
    array('g', 'h', 'i')
);

$new_array = array_map(null, ...$array);

print_r($new_array);

Output:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => d
            [2] => g
        )

    [1] => Array
        (
            [0] => b
            [1] => e
            [2] => h
        )

    [2] => Array
        (
            [0] => c
            [1] => f
            [2] => i
        )

)
  1. Tukar tatasusunan satu dimensi kepada tatasusunan objek

Tukar tatasusunan satu dimensi kepada tatasusunan objek, anda perlu mencipta objek kosong baharu dan menggunakan setiap elemen tatasusunan asal sebagai atribut objek. Berikut ialah contoh:

$array = array(
    'name' => 'John',
    'age' => 30,
    'email' => 'john@example.com'
);

$obj = (object) $array;

print_r($obj);

Output:

stdClass Object
(
    [name] => John
    [age] => 30
    [email] => john@example.com
)
  1. Menukar tatasusunan objek kepada tatasusunan satu dimensi

Menukar tatasusunan objek kepada tatasusunan satu dimensi, yang boleh dicapai menggunakan fungsi get_object_vars() yang disediakan dalam PHP. Fungsi ini menerima objek sebagai parameter dan mengembalikan tatasusunan bersekutu yang mengandungi semua sifat dan nilai sifat objek ini. Berikut ialah contoh:

$obj = new stdClass();
$obj->name = 'John';
$obj->age = 30;
$obj->email = 'john@example.com';

$array = get_object_vars($obj);

print_r($array);

Hasil output:

Array
(
    [name] => John
    [age] => 30
    [email] => john@example.com
)

Ringkasan

Dalam pengaturcaraan PHP, penukaran tatasusunan dua dimensi adalah kemahiran yang sangat praktikal. Artikel ini memperkenalkan lima kaedah penukaran biasa dan memberikan contoh kod yang sepadan. Kaedah penukaran yang berbeza boleh memenuhi keperluan yang berbeza Pengaturcara boleh memilih kaedah penukaran yang paling sesuai untuk memproses tatasusunan dua dimensi berdasarkan senario pembangunan sebenar mereka.

Atas ialah kandungan terperinci php penukaran tatasusunan dua dimensi. 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
Artikel sebelumnya:php padam nilai tatasusunanArtikel seterusnya:php padam nilai tatasusunan