Rumah > pembangunan bahagian belakang > masalah PHP > Cara menggunakan foreach dalam php untuk melintasi hasil pertanyaan

Cara menggunakan foreach dalam php untuk melintasi hasil pertanyaan

PHPz
Lepaskan: 2023-04-06 11:28:02
asal
918 orang telah melayarinya

Dalam pembangunan PHP, kita selalunya perlu menggunakan gelung foreach untuk melintasi tatasusunan atau objek dan beroperasi pada setiap elemennya. Apabila kita perlu mendapatkan data daripada pangkalan data dan perlu memprosesnya, kita juga boleh menggunakan gelung foreach untuk lelaran melalui hasil pertanyaan.

Dalam PHP, kami menggunakan sambungan MySQLi atau PDO untuk menyambung ke pangkalan data dan melaksanakan pertanyaan SQL. Hasil pertanyaan biasanya merupakan tatasusunan atau objek yang mengandungi data yang kami perlukan. Sebelum menggunakan gelung foreach untuk mengulangi hasil pertanyaan, kita perlu memastikan bahawa format keputusan pertanyaan adalah betul.

Apabila menggunakan sambungan MySQLi untuk menyambung ke pangkalan data, kami boleh mendapatkan hasil pertanyaan melalui fungsi mysqli_fetch_array() atau mysqli_fetch_object(). Kod sampel adalah seperti berikut:

// 连接数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 执行 SQL 查询
$result = mysqli_query($conn, "SELECT * FROM students");

// 遍历查询结果
while ($row = mysqli_fetch_array($result)) {
    echo $row['id'] . " " . $row['name'] . "<br>";
}

// 关闭数据库连接
mysqli_close($conn);
Salin selepas log masuk

Dalam kod sampel ini, kami mula-mula menyambung ke pangkalan data MySQL, dan kemudian melaksanakan pernyataan pertanyaan SELECT untuk mendapatkan semua data dalam jadual pelajar. Seterusnya, kami menggunakan gelung sementara untuk lelaran melalui hasil pertanyaan, dengan pembolehubah $row mewakili elemen setiap hasil pertanyaan. Di dalam gelung, kami mengakses sifat id dan nama setiap elemen melalui kunci tatasusunan dan mengeluarkannya ke penyemak imbas. Akhir sekali, kami menutup sambungan pangkalan data dan melepaskan sumber.

Apabila menggunakan sambungan PDO untuk menyambung ke pangkalan data, kami boleh mendapatkan hasil pertanyaan melalui kaedah fetch() objek PDOStatement. Kod sampel adalah seperti berikut:

// 连接数据库
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);

// 执行 SQL 查询
$result = $conn->query("SELECT * FROM students");

// 遍历查询结果
foreach ($result as $row) {
    echo $row['id'] . " " . $row['name'] . "<br>";
}

// 关闭数据库连接
$conn = null;
Salin selepas log masuk

Dalam kod sampel ini, kami mula-mula menyambung ke pangkalan data MySQL, dan kemudian melaksanakan pernyataan pertanyaan SELECT untuk mendapatkan semua data dalam jadual pelajar. Seterusnya, kami menggunakan gelung foreach untuk mengulangi hasil pertanyaan, dengan pembolehubah $row mewakili elemen setiap hasil pertanyaan. Di dalam gelung, kami mengakses sifat id dan nama setiap elemen melalui kunci tatasusunan dan mengeluarkannya ke penyemak imbas. Akhir sekali, kami menutup sambungan pangkalan data dan melepaskan sumber.

Perlu diambil perhatian bahawa apabila kita melelar melalui hasil pertanyaan, kita perlu mengakses nilai setiap elemen melalui nama atribut atau indeks hasil pertanyaan. Apabila menggunakan gelung foreach, kita perlu mengulangi hasil pertanyaan sebagai tatasusunan apabila menggunakan gelung sementara, kita perlu menggunakan fungsi mysqli_fetch_array() untuk menukar hasil pertanyaan kepada tatasusunan.

Ringkasnya, menggunakan foreach untuk menggelung melalui hasil pertanyaan adalah teknik yang sangat praktikal dalam pembangunan PHP. Dengan menggunakan teknik ini dengan betul, kami boleh memproses dan mengurus data yang diperolehi daripada pangkalan data dengan lebih mudah, dan meningkatkan kebolehgunaan semula dan kebolehselenggaraan kod.

Atas ialah kandungan terperinci Cara menggunakan foreach dalam php untuk melintasi hasil pertanyaan. 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