Использование PDO без привязки

$stmt = $conn->prepare('SELECT * FROM users WHERE user_id = :user_id'); $stmt->execute(array(':user_id' => $_GET['user_id'])); $result = $stmt->fetchAll(PDO::FETCH_OBJ); 

Я так использую PDO, мне нужно дезинфицировать параметр GET?

Я знаю, если я делаю $stmt->bindParam(':user_id', $_GET['user_id'], PDO::PARAM_INT); чем это не проблема. Но мой путь безопасен?

Solutions Collecting From Web of "Использование PDO без привязки"

Да, это безопасно. Единственные различия между execute и bind* :

  • execute принимает сразу несколько параметров, тогда как вы должны bind* каждый по отдельности
  • bind* позволяет указать тип параметра, а execute связывает все как строки

Передача параметров для execute – это, в основном, сокращение удобства, оно по-прежнему безопасно.