Skip to content

error on sql-IN() and empty-array #292

Open
@staabm

Description

@staabm

should error, as a sql error occurs when ids is an empty-array.

// should error
function inIDs(array $ids) {
  $pdo->query('SELECT email FROM ada WHERE adaid IN('. implode(',', $ids) .')', PDO::FETCH_ASSOC);
}

// should error
function inIDs(array $ids) {
  $stmt = $pdo->prepare('SELECT email FROM ada WHERE adaid IN(?)');
  $stmt->execute([implode(',', $ids)]);
}

// fine
/** @param non-empty-array $ids */
function inIDs(array $ids) {
  $pdo->query('SELECT email FROM ada WHERE adaid IN('. implode(',', $ids) .')', PDO::FETCH_ASSOC);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions