php从对象插入mysql表

时间:2018-04-08 04:25:41

标签: php mysql

拜托,我在数组中有一个表,我希望用php中的匹配模式更新对象。查询:

REPLACE INTO entries ( mail, name, gender, age, ip, t, code, v, ansvers ) 
VALUES ( '$entry->mail', '$entry->name', '$entry->gender', '$entry->age', '$entry->ip', '$entry->t', '$entry->code', '$entry->v', '$entry->ansvers' )

我想知道是否有任何简单的方法来指定变量,而不必使用循环创建查询字符串并检索对象/数组变量键或像这样手动键入所有内容。 例如,如果我将$entry->mail重命名为$entry->mail2,则查询将执行:

REPLACE INTO entries ( mail2 ) VALUES ( `$entry->mail2` )

如果需要,可以将$ entry更改为任何数据结构。

感谢。

1 个答案:

答案 0 :(得分:1)

如果从对象到表格确实存在1:1的对应关系,则可以执行此操作以生成查询:

$query = "REPLACE INTO entries (" . 
   implode(',', array_keys(get_object_vars($entry))) .
   ") VALUES ('" . 
   implode("','", get_object_vars($entry)) .
   "')";