電子書籍の厳選無料作品が豊富!

MySQLの1カラムに、下記のような配列を保存したいのですが、どうすればいいでしょうか?
Array
(
[0] => ./im/1a.j
[1] => ./im/2.j
[2] => ./im/9_1.j
[3] => ./im/4.j
[4] => ./img/9_3.j
)
・配列として保存できるのでしょうか?
・文字列連結とかして保存し、取り出した後、再度、配列形式にするのでしょうか? それは具体的にどうするのでしょうか?

A 回答 (2件)

正解は一つじゃないですね。

質問者さんの考えるのも正解。#1 さんがいう serialize 関数も正解。状況によってどれが最適かは違ってくるはず。適材適所ということですね。

参考 URL では serialize()、var_export()、json_encode()、http_build_query() の4つの方法を紹介している。それぞれの方法で、配列を文字列に変換するサンプル、変換した文字列から配列に戻すサンプルが書いてあるからわかりやすいんじゃないかな。

参考URL: [PHP] 配列を文字列に変換して取っておく4つの方法

参考URL:http://suin.asia/2011/08/09/4_tips_to_preserve_a …
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
リンク先、大変分かりやすかったです!

お礼日時:2012/09/03 12:41

>配列として保存できるのでしょうか?



配列のまま文字列型のカラムに入れることは出来ません(SQL文が書けないですよね)。

>文字列連結とかして保存し、取り出した後、再度、配列形式にするのでしょうか? それは具体的にどうするのでしょうか?

serializeして保存しておいて、取り出したデータをunserializeして使うとかですかね(implode/explodeでもいいですが、それだと区切り文字の選択に配慮しないといけないので)。

http://php.net/manual/ja/function.serialize.php
http://www.php.net/manual/ja/function.unserializ …
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
参考になりましたー

お礼日時:2012/09/03 12:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!