这是我们的db.php
$host = 'localhost';
$username = 'root';
$password = '';
try
{
$conn = new PDO("mysql:host=".$host.", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "CREATE DATABASE IF NOT EXISTS teacher";
$conn->exec($sql);
$sql = "use teacher";
$conn->exec($sql);
}
catch(PDOException $e)
{
echo "Error".$e->getMessage();
}
..
出现错误!
解析错误:语法错误,意外出现“创建”(T_STRING),
如何解决此问题。
答案 0 :(得分:1)
$conn = new PDO("mysql:host=".$host.", $username, $password);
^ ^ ^
1 2 3
双引号1开始一个字符串。
双引号2结束一个字符串。
双引号3开始一个字符串。
该字符串直到这里才关闭:
$sql = "CREATE ...
^
4
双引号4结束字符串。
这意味着CREATE
被解释为PHP关键字,而不是字符串的一部分。
提示:您可以将变量放在双引号中。这样可以更轻松地避免这种类型的不平衡引用错误。
$conn = new PDO("mysql:host=$host", $username, $password);