Apabila menggunakan rangka kerja ThinkPHP untuk operasi data, kita selalunya perlu menanyakan data dalam pangkalan data. Sama ada membuat pertanyaan menggunakan ORM atau pernyataan SQL tulisan tangan, pengetahuan penting bagi pembangun untuk menentukan sama ada hasil pertanyaan wujud dan cara memproses hasil pertanyaan. Artikel ini menerangkan terutamanya cara menggunakan rangka kerja ThinkPHP untuk menilai hasil pertanyaan.
1. Pertanyaan menggunakan ORM
Rangka kerja ThinkPHP untuk operasi ORM menyediakan pelbagai kaedah untuk operasi pertanyaan. Antara operasi ini, kaedah yang paling biasa digunakan ialah kaedah pilih dan kaedah cari. Antaranya, kaedah pilih mengembalikan set hasil, dan kaedah cari mengembalikan rekod hasil. Apabila pertanyaan tidak mempunyai hasil, hasil yang dikembalikan oleh kedua-duanya adalah tatasusunan kosong atau nilai nol. Di bawah ini kami menggunakan kod sampel untuk menunjukkan cara membuat pertimbangan.
// 查询student表中所有年龄小于18岁的学生信息 $map['age'] = ['lt', 18]; $res = Db::name('student')->where($map)->select(); if($res){ // 判断结果集是否存在 foreach($res as $row){ // 存在结果,对查询结果进行处理 echo $row['name'].'的年龄是'.$row['age'].'岁'.'<br>'; } }else{ // 无结果,给出提示信息 echo '很遗憾,没有找到符合条件的学生列表'; }
// 查询student表中年龄为21岁的学生信息 $map['age'] = 21; $res = Db::name('student')->where($map)->find(); if($res){ // 判断结果记录是否存在 // 存在结果,对查询结果进行处理 echo $res['name'].'的年龄是'.$res['age'].'岁'.'<br>'; }else{ // 无结果,给出提示信息 echo '很遗憾,没有找到符合条件的学生记录'; }
Gunakan pertanyaan SQL
Bagi pembangun yang biasa dengan operasi pernyataan SQL, pernyataan pertanyaan tulisan tangan pastinya merupakan pilihan yang baik. Apabila melakukan pertanyaan tulisan tangan, kami boleh mendapatkan set keputusan dan maklumat rekod keputusan melalui kaedah pengambilan dan kaedah fetchColumn masing-masing. Di bawah ini kami menggunakan kod sampel untuk menunjukkan cara membuat pertimbangan.
// 查询student表中所有性别为男性的学生信息 $sql = "SELECT * FROM student WHERE gender='male'"; $res = Db::query($sql); if($res){ // 判断结果集是否存在 foreach($res as $row){ // 存在结果,对查询结果进行处理 echo $row['name'].'的性别是'.$row['gender'].'<br>'; } }else{ // 无结果,给出提示信息 echo '很遗憾,没有找到符合条件的学生列表'; }
// 查询student表中姓名为张三的学生ID $sql = "SELECT id FROM student WHERE name='张三'"; $res = Db::query($sql); if($res){ // 判断结果集是否存在 // 存在结果,对查询结果进行处理 echo '张三的学生ID是:'.$res[0]['id']; }else{ // 无结果,给出提示信息 echo '很遗憾,没有找到符合条件的学生记录'; }
Ringkasan
Dengan menerangkan penggunaan kaedah pertanyaan ORM dan SQL, kita dapat melihat bahawa dalam kaedah ini, pertimbangan, pemprosesan dan output keputusan pertanyaan adalah pautan yang sangat penting. Hanya dengan menilai hasil pertanyaan kami boleh melakukan operasi seterusnya berdasarkan hasil pertanyaan. Oleh itu, adalah disyorkan bahawa pembangun memberi perhatian kepada pertimbangan dan pemprosesan set keputusan dan rekod keputusan semasa menjalankan operasi data.
Atas ialah kandungan terperinci Bagaimanakah thinkphp menentukan sama ada hasil pertanyaan mengandungi data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!