PHP ialah bahasa skrip sebelah pelayan yang digunakan secara meluas dalam pembangunan web. Dalam PHP, tatasusunan ialah jenis data penting yang boleh menyimpan berbilang nilai, termasuk nombor, rentetan atau objek. Dalam sesetengah kes, kita perlu menggabungkan berbilang nilai ke dalam tatasusunan dua dimensi untuk memenuhi keperluan perniagaan tertentu. Artikel ini akan meneroka cara PHP menyimpan tatasusunan dua dimensi dan memperkenalkan beberapa kaedah dan teknik.
1. Pengenalan kepada tatasusunan dua dimensi
Dalam PHP, tatasusunan dua dimensi ialah tatasusunan yang mengandungi berbilang tatasusunan dan setiap tatasusunan mengandungi berbilang pasangan nilai kunci (atau elemen). Contohnya, kod berikut menunjukkan cara mencipta tatasusunan dua dimensi yang ringkas:
$grades = array( array("Tom", 80), array("John", 90), array("Mary", 95) );
Dalam kod di atas, $grades ialah tatasusunan yang mengandungi 3 tatasusunan, setiap tatasusunan mengandungi 2 pasangan nilai kunci. Tatasusunan pertama mengandungi pasangan nilai kunci ("Tom", 80), tatasusunan kedua mengandungi pasangan nilai kunci ("John", 90), dan tatasusunan ketiga mengandungi pasangan nilai kunci ("Mary", 95 ).
2. Menyimpan tatasusunan dua dimensi
Apabila kita perlu menyimpan tatasusunan dua dimensi, kita boleh menggunakan kaedah dan teknik yang berbeza. Berikut adalah beberapa contoh biasa.
Kita boleh menggunakan fungsi serialisasi PHP serialize() untuk menukar tatasusunan dua dimensi menjadi rentetan dan menyimpannya dalam fail atau pangkalan data. Apabila diperlukan, kita boleh menggunakan fungsi penyahserikatan unserialize() untuk memulihkan rentetan kepada tatasusunan dua dimensi. Sebagai contoh, kod berikut menunjukkan cara untuk menyimpan tatasusunan dua dimensi $grades ke fail:
$serialized_grades = serialize($grades); file_put_contents("grades.txt", $serialized_grades);
Dalam kod di atas, kami menggunakan fungsi serialization serialize() untuk menukar tatasusunan $grades menjadi rentetan $serialized_grades, dan Gunakan fungsi file_put_contents() untuk menyimpan rentetan pada fail "grades.txt".
Apabila membaca fail, kita boleh menggunakan fungsi file_get_contents() untuk membaca rentetan dalam fail dan menggunakan fungsi penyahserikatan unserialize() untuk memulihkan rentetan kepada tatasusunan dua dimensi. Sebagai contoh, kod berikut menunjukkan cara membaca tatasusunan dua dimensi yang disimpan daripada fail:
$serialized_grades = file_get_contents("grades.txt"); $grades = unserialize($serialized_grades);
Dalam kod di atas, kami menggunakan fungsi file_get_contents() untuk membaca rentetan $ dalam fail " grades.txt" serialized_grades, dan gunakan fungsi penyahserialisasian unserialize() untuk memulihkan rentetan kepada tatasusunan dua dimensi $gred.
Kami juga boleh menggunakan fungsi JSON PHP json_encode() untuk menukar tatasusunan dua dimensi ke dalam format JSON dan menyimpannya dalam fail atau dalam pangkalan data. Apabila diperlukan, kita boleh menggunakan fungsi JSON json_decode() untuk memulihkan rentetan format JSON kepada tatasusunan dua dimensi. Sebagai contoh, kod berikut menunjukkan cara menyimpan tatasusunan dua dimensi $gred kepada fail:
$json_grades = json_encode($grades); file_put_contents("grades.json", $json_grades);
Dalam kod di atas, kami menggunakan fungsi JSON json_encode() untuk menukar tatasusunan dua dimensi $gred ke dalam rentetan format JSON $ json_grades dan gunakan fungsi file_put_contents() untuk menyimpan rentetan pada fail "grades.json".
Apabila membaca fail, kita boleh menggunakan fungsi file_get_contents() untuk membaca rentetan format JSON dalam fail dan menggunakan fungsi JSON json_decode() untuk memulihkan rentetan format JSON ke dalam tatasusunan dua dimensi. Sebagai contoh, kod berikut menunjukkan cara membaca tatasusunan dua dimensi yang disimpan daripada fail:
$json_grades = file_get_contents("grades.json"); $grades = json_decode($json_grades, true);
Dalam kod di atas, kami menggunakan fungsi file_get_contents() untuk membaca aksara format JSON dalam fail "grades.json" rentetan $json_grades dan gunakan fungsi JSON json_decode() untuk memulihkan rentetan format JSON kepada tatasusunan dua dimensi $grades.
Kita boleh menggunakan sambungan pangkalan data PHP seperti MySQLi atau PDO untuk menyimpan tatasusunan dua dimensi ke pangkalan data. Sebagai contoh, kod berikut menunjukkan cara untuk menyimpan tatasusunan dua dimensi $gred ke dalam pangkalan data MySQL:
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败:" . $conn->connect_error); } // 创建SQL语句 $sql = "INSERT INTO grades (name, score) VALUES (?, ?)"; // 准备SQL语句 $stmt = $conn->prepare($sql); // 绑定参数并执行SQL语句 foreach ($grades as $grade) { $name = $grade[0]; $score = $grade[1]; $stmt->bind_param("si", $name, $score); $stmt->execute(); } $stmt->close(); $conn->close();
Dalam kod di atas, kami menggunakan sambungan MySQLi untuk mencipta sambungan pangkalan data $conn, dan gunakan pernyataan SQL INSERT INTO untuk menukar dua Tatasusunan dimensi $gred disimpan ke gred jadual. Kami mula-mula menyediakan pernyataan SQL menggunakan fungsi prepare() dan mengikat parameter menggunakan fungsi bind_param(). Kemudian, kami menggunakan gelung foreach untuk melintasi tatasusunan dua dimensi $gred dan memasukkan $nama dan $skor ke dalam gred jadual.
Apabila kita perlu membaca tatasusunan dua dimensi yang disimpan, kita boleh menggunakan penyataan SQL SELECT dan fungsi ambil untuk membaca data yang berkaitan daripada pangkalan data.
3. Ringkasan
Dalam PHP, kita boleh menggunakan kaedah dan teknik yang berbeza untuk menyimpan tatasusunan dua dimensi berbilang nilai, termasuk menyimpan tatasusunan sebagai rentetan, format JSON atau dalam pangkalan data. Teknik ini boleh memenuhi keperluan perniagaan yang berbeza dan meningkatkan kebolehbacaan dan kebolehselenggaraan program. Dalam pembangunan sebenar, kami memilih kaedah penyimpanan yang sesuai berdasarkan keperluan perniagaan dan keperluan prestasi untuk meningkatkan kecekapan dan kualiti program.
Atas ialah kandungan terperinci Bagaimana untuk menyimpan tatasusunan dua dimensi dalam php (kaedah dan petua). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!