-3

重複の可能性:
配列を mysql に格納する方法は?

これは、データベースに保存する必要がある配列です:-

$v=array(
"Image"=> array (
                 0=> array (
                                "id"=> 150,
                                "Tags"=> array(
                                                0=> array ( "id"=> 200, "text"=>"John Doe", "left"=> 250, "top"=> 50, "url"=> "person.php?id=200" ,"isDeleteEnable"=> true ),
                                                1=> array ( "id"=> 400, "text"=> "Michael Smith", "left"=> 420, "top"=> 45, "width"=> 120, "height"=> 120, "isDeleteEnable"=> true ),
                                                2=> array ( "id"=> 500, "text"=> "Peter Parker" ,"left"=> 55 ,"top"=> 40, "url"=> "person.php?id=500" ,"isDeleteEnable"=> false )
                                                )
                            )

                   )       

    ) ;

この配列全体をデータベースに格納できるように、これを実行できる関数はありますか。私はLAMPで開発しています。また、この配列をデータベースから再度取得する必要があります。

4

3 に答える 3

2

見てserialize()

$db = serialize($v);

そしてもちろん、unserialize()それを復元するために。

実際のデモ(提供されたデータを使用)

于 2012-10-17T17:56:21.103 に答える
1

いくつかのオプションがあります。最も注目すべき点は、それをシリアライズして、シリアライズされた文字列をデータベースに保存してから、 を使用unserializeして文字列を配列に戻すことができることです。これが最も簡単な答えです。

imageもう 1 つのオプションは、「id」フィールドを持つテーブル、 や などのimagetag フィールドを持つテーブル、imageidやなどのフィールドを持つテーブルを作成することで、実行していることを正確にサポートするようにデータベースをセットアップすることです。tagidtagidtext

このオプションはよりモジュール化されており、データベース管理システムによってより適切に管理されます。

于 2012-10-17T17:56:26.033 に答える
0
$string = serialize($v);
$v = unserialize($string);
于 2012-10-17T18:02:17.627 に答える