Dalam PHP, hasil pertanyaan kadangkala dikembalikan dalam bentuk yang berbeza, yang mungkin merupakan objek atau tatasusunan Kadangkala hasil yang kita inginkan ialah tatasusunan. Oleh itu, berikut ialah beberapa kaedah untuk menukar hasil pertanyaan kepada tatasusunan untuk menjadikan hasil pertanyaan lebih selari dengan keperluan kita.
kaedah fetch_assoc() mengembalikan tatasusunan bersekutu, dengan nama kunci ialah nama medan dalam pangkalan data dan nilai kunci adalah sepadan satu dalam nilai rekod. Kaedah fetch_assoc() mengembalikan baris data daripada hasil pertanyaan Memanggil kaedah ini sekali sahaja boleh mengembalikan satu baris Jika anda ingin membaca baris lain, anda perlu memanggil kaedah ini sekali lagi.
Kod sampel adalah seperti berikut:
// 假设 $conn 是 MySQL 数据库连接对象 $sql = "SELECT id, name, age FROM users"; $result = $conn->query($sql); // fetch_assoc 方法返回一个关联数组 while ($row = $result->fetch_assoc()) { echo $row['id'] , $row['name'] , $row['age']; }
fetch_array() kaedah mengembalikan indeks berangka yang mengandungi kedua-dua indeks berangka dan indeks bersekutu, yang serupa dengan gabungan tatasusunan bersekutu dan tatasusunan diindeks. Indeks angka sepadan dengan indeks lajur dalam hasil pertanyaan, dan indeks yang berkaitan sepadan dengan nama medan dalam pangkalan data. Kaedah ini serupa dengan kaedah fetch_assoc(), kecuali tatasusunan yang dikembalikan adalah berbeza.
Kod sampel adalah seperti berikut:
// 假设 $conn 是 MySQL 数据库连接对象 $sql = "SELECT id, name, age FROM users"; $result=$conn->query($sql); // fetch_array 方法返回一个包含关联和数字索引的数组 while ($row = $result->fetch_array()) { echo $row['id'] , $row['name'] , $row['age']; }
kaedah fetch_all() mengembalikan set hasil penuh perlu dalam mysqli Ia hanya boleh digunakan dengan sambungan versi 5.3.0 ke atas, dan hanya menyokong penggunaan pemacu sambungan MySQL. Hasil yang dikembalikan ialah tatasusunan dua dimensi, setiap subtatasusunan ialah baris data, dan unsur-unsur dalam subtatasusunan sepadan dengan setiap medan dalam barisan rekod. Menggunakan kaedah ini boleh memudahkan kod.
Kod sampel adalah seperti berikut:
// 假设 $conn 是 MySQL 数据库连接对象 $sql = "SELECT id, name, age FROM users"; $result = $conn->query($sql); // fetch_all 方法返回一个二维数组 $data = $result->fetch_all(); foreach ($data as $row) { echo $row[0] , $row[1], $row[2]; }
Ringkasan
Gunakan kaedah fetch_assoc() untuk mendapatkan tatasusunan bersekutu dengan nama medan sebagai nama kunci, dan gunakan kaedah fetch_array() untuk mengembalikan Tatasusunan yang mengandungi kedua-dua indeks angka dan bersekutu, manakala kaedah fetch_all() boleh terus mengembalikan tatasusunan dua dimensi bagi keseluruhan set hasil. Bergantung pada situasi tertentu, memilih untuk menggunakan kaedah yang berbeza untuk mendapatkan tatasusunan hasil pertanyaan boleh membantu kami mengendalikan data dengan lebih mudah.
Atas ialah kandungan terperinci Bagaimana untuk menukar hasil pertanyaan ke dalam tatasusunan dalam php (tiga kaedah). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!