วิธีตรวจสอบว่าแบบสอบถามฐานข้อมูลมีผลลัพธ์หรือไม่


11

ฉันจะตรวจสอบว่ารหัสต่อไปนี้มีผลลัพธ์ได้อย่างไร

ฉันลองใช้ฟังก์ชั่นที่ว่างเปล่าแต่มันคืนค่าFALSEเสมอ


$query = db_select('my_table', 't');
$query->condition('code', 10)
      ->fields('t', array('cid'));
$result = $query->execute();

คำตอบ:



1

หากคุณพิมพ์var_dump($result);คุณจะเห็นว่า$resultมีแบบสอบถามและตัวแปรอื่น ๆ จึงไม่เคยว่างเปล่า
คุณสามารถใส่$resultในforeachห่วงที่จะเห็นผล

foreach ($result as $record) {
  var_dump($record);
}

ภายในforeachวงคุณสามารถพิมพ์ผลลัพธ์ด้วยรหัสนี้

foreach ($result as $record) {
  print $record->nid;
  print $record->title;
}

หากมีเพียงหนึ่งระเบียนที่เป็นผลลัพธ์mysql_fetch_array()จะใช้เพื่อจัดการกับระเบียน


คุณพิมพ์ผิด สิ่งนี้ควรเป็นforeach ($result as $record) { var_dump($record); }
vanz

ด้วย Drupal มันเป็นคำแนะนำที่ไม่ดีที่จะแนะนำให้ใช้ฟังก์ชั่น MySQL ไซต์อาจใช้ PosgreSQL, SQLite หรือเอ็นจิ้นฐานข้อมูลอื่นที่ Drupal เข้ากันได้ ฟังก์ชั่นฐานข้อมูล Drupal ไม่จำเป็นต้องมีโมดูลในการรู้กลไกของฐานข้อมูลที่ใช้จากด้าน
kiamlaluno

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.