yhiroaki回答ポイント なしウォッチ

[PHP/MySQL]連想配列のINSERTについて


連想配列にキーと値(1対1)の組合せを複数格納しています。
これをテーブルの1レコード分に見立ててINSERTしたいです。
連想配列にはレコードのカラムのすべての要素が格納されているわけではなく一部の要素のこともあります。
(時によって格納しているキー/値は異なります)

例えば、
テーブル名:members
カラム:会員ID(主キー)、住所、氏名、性別、年齢、職業 ※すべてvarchar

に、連想配列
$values = array(
 "会員ID"=>"ID00010",
 "住所"=>"埼玉県○市",
 "氏名"=>"○本○郎",
 "年齢"=>"20"
);

をINSERTするケースです。
この例では、会員ID、住所、氏名、年齢が連想配列に格納されていますが、
職業が格納されたり、年齢が格納されなかったり、格納されているもの処理毎に不定です。(主キーの会員IDは必ず設定します)

この$valuesをINSERTするコードを書きたく、
1カラムづつ、$valuesに格納されているかどうか判定して、SQL用の文字列を操作していくコードは書けたのですが、メンテナンスを考えて、もう少しエレガントに書けないかと思い投稿させていただきました。

検索もしてみたのですが、なかなかぴったりくるコードに出会えず。

ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2016-09-04 10:03:15
終了日時
2016-09-10 10:12:40
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

連想配列84MySQL2612SQL1319PHP7798埼玉県376メンテナンス432レコード916

人気の質問

メニュー

PC版