如何将所有数组数据插入mysql?

时间:2014-06-30 06:08:22

标签: php mysql sql arrays

如何将所有数组数据插入mysql?

我想将所有数组字符串插入到mysql中,我可以这样做吗?

<?PHP
include("connect.php");
for ($i = 0; $i < 10; $i++) 
    {
        $myArray[$i] = $i;
    }
$sql = "INSERT INTO table
( all_array , user )
VALUES
('array($myArray)' , '11');";
$dbQuery = mysql_query($sql);
?>

4 个答案:

答案 0 :(得分:1)

您可以使用json类型保存所有数组。但是你不应该使用mysql_ *函数,使用PDO。

例如:

<?PHP
include("connect.php");
for ($i = 0; $i < 10; $i++) 
    {
        $myArray[$i] = $i;
    }

$json_array = json_encode($myArray);
$sql = "INSERT INTO table
( all_array , user )
VALUES
('$json_array' , '11');";
$dbQuery = mysql_query($sql);
?>

答案 1 :(得分:1)

您可以使用PHP的implode函数将数组元素与字符串连接起来。

$arrayAsAString = implode(",", $myArray);

注意:我刚看到@onuri的回答。所以考虑这个替代方案。

CAVEAT:无论您选择哪种方法,执行数据库查询都很困难。

答案 2 :(得分:0)

使用php implode函数,它会将数组中的所有元素分解为逗号分隔的字符串。更改您的代码如下。

<?PHP
include("connect.php");
for ($i = 0; $i < 10; $i++) 
    {
        $myArray[$i] = $i;
    }
$arrayString= implode(", ", $myArray);
$sql = "INSERT INTO table
( all_array , user )
VALUES
('$arrayString' , '11');";
$dbQuery = mysql_query($sql);
?>

Check out this link for details

答案 3 :(得分:0)

我会用json

做到这一点
<?PHP
    include("connect.php");
    for ($i = 0; $i < 10; $i++) 
    {
        $myArray[$i] = $i;
    }

    $myJSON = json_encode($myArray);

    $sql = "INSERT INTO table ( all_array , user ) VALUES ('$myJSON' , '11');";
    $dbQuery = mysql_query($sql);
?>

这会将数组作为JSON-String返回,可以存储在db中。如果我稍后选择它,我可以轻松地将JSON-String转换回数组,如果需要:

$myArray = json_decode($myJSONString);