如何使用php创建mysql表

时间:2014-12-15 20:34:06

标签: php mysql mysqli

我需要进行应用程序安装,并且需要像wordpress一样安装这些表。我没有错误的PHP但这个代码不会使任何表...

$conn = new mysqli('localhost', 'root', '', 'billboard');
if (mysqli_connect_errno()) {
    exit('Connection lost');
};
for($i=1;$i<=21;$i++){
    $table= "city".$i ;
    echo ($table . "<br>");
    $sql='CREATE TABLE $table
      ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id),
        test0 VARCHAR(30),
        test1 VARCHAR(30),
        test2 VARCHAR(30))';
    if ($conn->query($sql) === TRUE) {
        echo 'tables created';
    }
    else {
        echo 'Cant create tables';
    };
};

1 个答案:

答案 0 :(得分:0)

PHP评估“用双引号括起来”的字符串中的变量,但是当字符串“用单引号括起来”时,不会评估变量。换句话说,单引号字符串是字面的。

在这种情况下,您尝试创建一个名为$ table的表20次。相反,您可以将变量连接到循环中,如下所示:

$sql= 'CREATE TABLE ' . $table . '
    ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id),
    //etc...

OR

$sql= "CREATE TABLE $table 
    ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id),
    //etc...

我发现在SQL查询中使用双引号更方便,因为您经常需要将SQL值放入单引号(例如WHERE ID ='5')。