You are here
Drupal 8 API tutorials
Want to learn about the Drupal 8 APIs, with worked examples? Follow my series of tutorials, covering routing, caching, entities, config and much more!
Want to hire me?
Recent blogposts
-
Altering the length of a Drupal 8 text field that contains data
Friday, July 21, 2017 - 11:31 -
A menagerie of testing: behavioural, unit, system, smoke, regression, oh my!
Friday, June 2, 2017 - 10:11 -
Including Javascript in Behat tests, all inside a headless, virtual machine
Tuesday, May 30, 2017 - 16:51
About me
I'm J-P Stacey, and I'm a freelance technical developer and software architect, working with Drupal, Javascript, Symfony, PHP and devops, with experience in project and process management and an emphasis on usability.
I live in the UK; my website is self-hosted on bigv.io; my email is hosted by Google, and that's also what I use to share files. (More info|What is this?)
That's certainly a good point
That's certainly a good point, but I would be wary of using node_load_multiple() if you're going to have very large result sets. It's fine IMHO to use it for maybe 5 or 10 nodes (e.g. a nodereference or entityreference field) but the data I've been working on has returned 100s or 1000s of them.
At that point, you would want to: load each node in turn; keep overwriting the $node and $wrapped_node variables; and let PHP's garbage collection remove the older nodes and EMW objects from memory for you (it might need an unset() hint, I'm not sure.) However, if you're loading the whole data set at the start, then doing more complex manipulations on each node in turn, then on big, complex sites you're liable to run out of memory before you finish.
It's definitely worth looking at on a case-by-case basis, though.