Avatar ·

在PHP的MySQL查询中何时使用单引号、双引号和反引号

大家好!我刚开始学习PHP和MySQL,对引号的使用完全搞混了。我正在写一个简单的博客脚本,需要从表中输出记录,然后添加新记录。看起来很简单,但我总是搞不清什么时候该用哪种引号。

下面是我的代码示例。它能运行,但我不确定是否正确:

// 数据查询
$query = "SELECT * FROM posts WHERE id = $post_id";
$result = mysqli_query($link, $query);

// 插入新记录
$title = "我的新帖子";
$query = 'INSERT INTO posts (title, content) VALUES ("' . $title . '", "' . $content . '")';
$result = mysqli_query($link, $query);

我看到这里混用了PHP中的单引号、SQL中的双引号,还有别处看到的用于表名的反引号。当我尝试在字符串中直接使用变量时,有时会出错,特别是当变量中包含撇号时(比如单词"don't")。

请给我一个清晰的解释,谢谢!