php penukaran tatasusunan dua dimensi

WBOY
Lepaskan: 2023-05-23 09:36:37
asal
480 orang telah melayarinya

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);
Salin selepas log masuk

Hasil keluaran:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
Salin selepas log masuk
  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);
Salin selepas log masuk

Hasil keluaran:

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

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

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

)
Salin selepas log masuk
  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);
Salin selepas log masuk

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
        )

)
Salin selepas log masuk
  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);
Salin selepas log masuk

Output:

stdClass Object
(
    [name] => John
    [age] => 30
    [email] => john@example.com
)
Salin selepas log masuk
  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);
Salin selepas log masuk

Hasil output:

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

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!