Ir al contenido

Query Inside Loop (ARCH7064)

Esta página aún no está disponible en tu idioma.

Key php.orm.query-inside-loop · Severity warning · Category orm

Issuing any database read query (find, aggregate, repository call) inside a loop body produces one round-trip per item. This is a broader performance trap than relation N+1.

<?php
foreach ($ids as $id) {
$user = User::find($id); // query each iteration
process($user);
}
<?php
$users = User::whereIn('id', $ids)->get(); // single query
foreach ($users as $user) {
process($user);
}

Move the in-loop query into a single batch query (whereIn) outside the loop.