我有JSON数组。其中一些json键包含mysql表列,或者一些不在我的表中。
我正在用PHP创建这样的查询:
$fields_query = $fields_query . strtoupper("$key") . " ,";
$values_query = $values_query . "'" . $value . "'" . " ,";
如何删除不在我的表中的json数据?
您可以按照下面给出的步骤操作
- 获取数组中表的列名,例如
$column_names
,如链接中所述https://www.codexworld.com/how-to/get-column-names-from-table-in-mysql-php/ - 现在,获取另一个数组
$data
中的JSON数据json_decode()
。记住提取关联数组 - 声明另一个数组
$saveArray = [];
- 从数组
$column_names
中删除不希望成为插入查询一部分的列。为此,您可以使用array_search()
和unset()
函数 - 首先在数组
$data
上迭代 - 在上一步的循环中再加一个for循环。这个for循环将在数组
$column_names
上进行迭代 - 现在,只需使用最内部循环中的可用列名,即可从parent for循环中可用的$data中的数据行中提取其值
- 您只需要为每个数据行准备一个最终的插入查询
- 运行查询
请告诉我这些步骤是否对您有所帮助。