MySQL在db中保存数组

时间:2014-07-15 08:22:44

标签: php mysql arrays

是否可以将关联数组存储在db?

array(
       key  => value,
       key2 => value2,
       key3 => value3,
       ...
      )

目前,如果我写fieldname = '$array',只会在字段中存储字符串“Array”。

4 个答案:

答案 0 :(得分:0)

试试这个

fieldname = json_encode($array);

当您想从数据库中检索时,请使用

$array = json_decode($fieldname);

答案 1 :(得分:0)

你也可以这样做:

serialize($array);

然后从数据库中获取它时:

unserialize($array);

答案 2 :(得分:0)

使用

$fieldname = json_encode($array);

答案 3 :(得分:0)

    php code to store array in database
    <?
        $array_string = array(key => value, key2 => value2, key3 => value3);
        $conn=mysql_connect('localhost', 'mysql_user', 'mysql_password');
        mysql_select_db("mysql_db",$conn);
        $array_string=mysql_escape_string(serialize($array));
        mysql_query("insert into table (column) values($array_string)",$conn);
    ?>

    To retrieve array from database

    <?
        $conn=mysql_connect('localhost', 'mysql_user', 'mysql_password');
        mysql_select_db("mysql_db",$conn);
        $q=mysql_query("select column from table",$conn);
        while($rs=mysql_fetch_assoc($q))
        {
        $array= unserialize($rs['column']);
        print_r($array);
        }
    ?>