14 占位符数组

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com

    Drupal的数据库层,包含了有关占位符的一个附加特性。对于一个占位符,如果传递给它的值是一个数组,它就会自动地将占位符扩展为逗号分隔的占位符列表,分别对应于数组中的元素。这意味着开发者不需要考虑他们需要多少个占位符。

    我们通过实例来学习一下这一特性:

<?php
// This code:
db_query("SELECT * FROM {node} WHERE nid IN (:nids)", array(':nids' => array(1342144));

// Will get turned into this prepared statement equivalent automatically:
db_query("SELECT * FROM {node} WHERE nid IN (:nids_1, :nids_2, :nids_3)", array(
  ':nids_1' => 13
  ':nids_2' => 42
  ':nids_3' => 144,
));

// Which is equivalent to the following literal query:
db_query("SELECT * FROM {node} WHERE nid IN (13, 42, 144)");
?>


Drupal版本: