Maw*_*awg 7 php prepared-statement
我在google搜索时在一些代码示例中找到了这个:
$sql = 'INSERT INTO users (username,passwordHash) VALUES (?,?)';
Run Code Online (Sandbox Code Playgroud)
这对我来说是新的,但我猜它是一种替代方法,等同于
$sql = "INSERT INTO users (username,passwordHash) VALUES ($username,$passwordHash)";`
Run Code Online (Sandbox Code Playgroud)
要么
$sql = 'INSERT INTO users (username,passwordHash) VALUES (' . $username . ',' . $passwordHash . ')';`
Run Code Online (Sandbox Code Playgroud)
那是对的吗?它是一个真正的PHP语法,还是他只是想简化他的例子?
感谢您的反馈,伙计们
Sam*_*son 12
这在准备好的陈述中非常常见.它?仅用作占位符,如下面的PHP文档所示:
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (?, ?)");
$stmt->bindParam(1, $name);
$stmt->bindParam(2, $value);
// insert one row
$name = 'one';
$value = 1;
$stmt->execute();
// insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
Run Code Online (Sandbox Code Playgroud)