Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk melaksanakan operasi penyongsangan tatasusunan dua dimensi

Cara menggunakan PHP untuk melaksanakan operasi penyongsangan tatasusunan dua dimensi

PHPz
PHPzasal
2023-04-19 10:07:18886semak imbas

Dalam pengaturcaraan PHP, tatasusunan dua dimensi ialah struktur data yang digunakan untuk menyimpan berbilang nilai data. Tatasusunan jenis ini boleh digunakan untuk menyimpan struktur data yang kompleks seperti data jadual dan jadual. Dalam sesetengah kes, adalah perlu untuk menyongsangkan tatasusunan dua dimensi, iaitu, untuk menukar baris dan lajur. Sebagai contoh, apabila memaparkan data jadual, selalunya perlu untuk menyongsangkan lajur dan baris untuk mempersembahkan data dengan lebih baik. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan operasi penyongsangan tatasusunan dua dimensi.

1. Apakah itu tatasusunan dua dimensi

Dalam PHP, tatasusunan dua dimensi ialah tatasusunan yang boleh mengandungi berbilang tatasusunan. Setiap tatasusunan mengandungi satu set nilai data dan indeks digunakan untuk mengakses nilai ini. Berikut ialah contoh tatasusunan 2D yang mudah:

$data = array(
    array("apple", "banana", "orange"),
    array("red", "yellow", "orange"),
    array("sweet", "sour", "sweet")
);

Tatasusunan di atas mengandungi 3 tatasusunan, setiap satu mengandungi 3 nilai rentetan. Untuk mengakses nilai ini, anda boleh menggunakan kod berikut:

echo $data[0][0]; //输出 "apple"
echo $data[1][2]; //输出 "orange"
echo $data[2][1]; //输出 "sour"

2 Operasi penyongsangan tatasusunan dua dimensi

Dalam PHP, anda boleh menggunakan pernyataan gelung for dan pernyataan gelung foreach. untuk melintasi tatasusunan dua dimensi Nilai dalam merealisasikan operasi penyongsangan tatasusunan dua dimensi. Berikut ialah contoh menggunakan pernyataan gelung for untuk melaksanakan operasi penyongsangan tatasusunan dua dimensi:

function array_invert($arr) {
    // 获取数组的行数和列数
    $rows = count($arr);
    $cols = count($arr[0]);
    // 创建倒置后的数组
    $invertArr = array();
    // 循环遍历数组的行与列
    for ($i = 0; $i < $cols; $i++) {
        for ($j = 0; $j < $rows; $j++) {
            $invertArr[$i][$j] = $arr[$j][$i];
        }
    }
    // 返回倒置后的数组
    return $invertArr;
}

Dalam kod di atas, mula-mula dapatkan bilangan baris dan lajur tatasusunan dua dimensi, dan kemudian buat tatasusunan terbalik $invertArr . Kemudian, baris dan lajur tatasusunan dua dimensi dilalui melalui dua untuk gelung Semasa proses traversal, nilai disalin ke dalam tatasusunan terbalik, dan akhirnya tatasusunan terbalik dikembalikan.

Berikut ialah contoh menggunakan fungsi untuk menyongsangkan tatasusunan dua dimensi:

$data = array(
    array("apple", "banana", "orange"),
    array("red", "yellow", "orange"),
    array("sweet", "sour", "sweet")
);

$invertData = array_invert($data);

// 输出倒置后的数组
foreach ($invertData as $row) {
    foreach ($row as $value) {
        echo $value . " ";
    }
    echo "<br/>";
}

Dalam kod di atas, tatasusunan dua dimensi $data mula-mula dihantar ke fungsi , dan fungsi mengembalikan tatasusunan terbalik $invertData. Kemudian, gunakan gelung foreach untuk melintasi tatasusunan terbalik dan keluarkan nilai ke halaman.

3. Ringkasan

Artikel ini memperkenalkan konsep tatasusunan dua dimensi dalam PHP dan kaedah pelaksanaan operasi penyongsangan. Dengan merentasi baris dan lajur tatasusunan dua dimensi, baris dan lajur tatasusunan dua dimensi boleh disongsangkan. Operasi penyongsangan berguna dalam banyak situasi, seperti semasa memaparkan data jadual atau mengira produk matriks, di mana anda perlu menyongsangkan tatasusunan dua dimensi.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk melaksanakan operasi penyongsangan 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