В чем разница между кавычками «и»? Что относительно `? Есть ли ошибка в использовании разных кавычек 'и' ниже?PHP: разные кавычки?
$result = pg_query_params($dbconn,
'INSERT INTO users
(username, email, passhash_md5)
VALUES ($1, $2, $3)',
array($username, $email, $passhash_md5
)
$result = pg_query_params($dbconn,
"SELECT user_id
FROM users
WHERE email = $1",
array($email)
)
Escapes для управления символами, например \ n и \ t, также не разворачиваются в строках одиночной кавычки. – PhiLho
Струны типа '$ sql1' всегда заставляют меня съеживаться. Если вы _really_ хотите включить в него переменную, всегда используйте мои '' {$ email} '. Мой обычный подход: '' WHERE email = ". $ Email', в котором совершенно ясно, что его НЕ следует воспринимать буквально. – JorenB
Конечно, ни один из этих способов не защищен от SQL-инъекций, независимо от того, что вы называете переменной! OP имеет это право, используя $ 1 и др. Для pg_query_params в одинарных кавычках; здесь не происходит никакой замены переменных. Синтаксис '$ 1', возможно, немного вводит в заблуждение ... другие системы параметризации запроса используют '?'. – bobince