用PHP将数组插入MySQL数据库

我有以下要存储在数据库中的数组…

$insData = array(

'uid' => $fbme['id'],

'first_name' => $fbme['first_name'],

'last_name' => $fbme['last_name'],

'email' => isset($fbme['email']) ? $fbme['email'] : '',

'link' => $fbme['link'],

'affiliations' => $networks,

'birthday' => $info[0]['birthday_date'],

'current_location' => isset($fbme['location']['name']) ? $fbme['location']['name'] : '',

'education_history' => $education,

'work' => $workInfo,

'hometown_location' => isset($fbme['hometown']['name']) ? $fbme['hometown']['name'] : '',

'interests' => $info[0]['interests'],

'locale' => $info[0]['locale'],

'movies' => $movies,

'music' => $music,

'political' => $info[0]['political'],

'relationship_status' => $info[0]['relationship_status'],

'sex' => isset($fbme['gender']) ? $fbme['gender'] : '',

'tv' => $television,

'status' => '0',

'created' => $now,

'updated' => $now,

);

我试图搜索谷歌上如何做到这一点,我所能找到的是表明插入数组之前需要对数组进行拆分的信息。它是否正确?抱歉,天真,对于php来说还很陌生。

回答:

Mysql 只了解 SQL

。因此,要将数组插入mysql数据库,必须将其转换为sql语句。可以手动或通过库来完成。输出应为INSERT语句。

这是标准的mysql插入语句。

INSERT INTO TABLE1(COLUMN1, COLUMN2, ....) VALUES (VALUE1, VALUE2..)

如果您 _的表名称fbdata带有数组键中显示的列,则_可以插入此小片段。这是将数组转换为该语句的方式。

$columns = implode(", ",array_keys($insData));

$escaped_values = array_map('mysql_real_escape_string', array_values($insData));

$values = implode(", ", $escaped_values);

$sql = "INSERT INTO `fbdata`($columns) VALUES ($values)";

由于mysql_real_escape_string不赞成使用PHP 5.5

,而自PHP7起,已将其删除。有关新过程,请参阅:Php.net的文档。

以上是 用PHP将数组插入MySQL数据库 的全部内容, 来源链接: utcz.com/qa/401444.html

回到顶部