node_load_multiple

7 node.module node_load_multiple($nids = array(), $conditions = array(), $reset = FALSE)
8 node.module node_load_multiple($nids = array(), array $conditions = array(), $reset = FALSE)

Load node entities from the database.

This function should be used whenever you need to load more than one node from the database. Nodes are loaded into memory and will not require database access if loaded again during the same page request.

@todo Remove $conditions in Drupal 8.

Parameters

$nids: An array of node IDs.

$conditions: (deprecated) An associative array of conditions on the {node} table, where the keys are the database fields and the values are the values those fields must have. Instead, it is preferable to use EntityFieldQuery to retrieve a list of entity IDs loadable by this function.

$reset: Whether to reset the internal node_load cache.

Return value

An array of node objects indexed by nid.

See also

entity_load()

EntityFieldQuery

14 calls to node_load_multiple()

File

modules/node/node.module, line 907
The core that allows content to be submitted to the site. Modules and scripts may programmatically submit nodes using the usual form API pattern.

Code

function node_load_multiple($nids = array(), $conditions = array(), $reset = FALSE) {
  return entity_load('node', $nids, $conditions, $reset);
}

Comments

Argument length

The number of nodes that can be loaded into memory in a single query is limited by the PDO layer, the database driver, configuration details, and of course, available memory. Passing too large an argument array to this function can result in the cryptic error message General error: 1 too many SQL variables.

A documentation bug has been posted to note the limited argument length.

Login or register to post comments