Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单个php行中的关联数组_Php_Mysql - Fatal编程技术网

单个php行中的关联数组

单个php行中的关联数组,php,mysql,Php,Mysql,我想咨询一下如何最好地做到以下几点: 我有一些主值,我想将它们作为数组插入MySQL数据库,假设它们是父级 array(parent1,parent2,parent3,parent4); 现在,这些父母各自有一个或多个孩子,例如: parent1 => child1, parent2 => child1,child2,child3, parent3 => child1, child2, child3 等等 我将有一个表格,你可以在其中添加一个家长,在这个家长被添加后,你可以

我想咨询一下如何最好地做到以下几点:

我有一些主值,我想将它们作为数组插入MySQL数据库,假设它们是父级

array(parent1,parent2,parent3,parent4);
现在,这些父母各自有一个或多个孩子,例如:

parent1 => child1,
parent2 => child1,child2,child3,
parent3 => child1, child2, child3
等等

我将有一个表格,你可以在其中添加一个家长,在这个家长被添加后,你可以在其中添加X个孩子


那么,处理这种情况的最佳方法是什么呢?我想它需要一个关联数组,请有人给我一个建议,使用php和MySQL。

您可以创建一个如下所示的数组:

$arr=array(
“parent1'=>数组('child1'),
“parent2'=>数组('child1','child2'),
'parent3'=>数组('child1','child2','child3')
);
//调试。。。
变量转储(数组密钥($arr));//这些是父母
变量转储(数组值($arr));//这些是他们的孩子
然后,插入:

var_dump('INSERT INTO`parents`(`name`)值('.introde(''),(“',array_-keys($arr));//这些是父母
foreach($arr作为$parent=>$children)
var_dump('INSERT INTO`children`(`parent_name`,`name`)值('.$parent'.'',“'.intomode('.''),('.$parent'.'',“',array_key($children));//这些是孩子们

var\u dump()
更改为用于运行查询的相应方法。

GROUP\u CONCAT可以在mysql中执行此操作,但至少发布一些相同的数据和模式,让人们尝试不执行此操作。。。。否则,你要问的下一个问题将是如何搜索部分条目上的匹配项-规范化你的数据库你说的规范化是什么意思?你要问如何在DB中存储它或如何在php中处理它吗?@durian-建议你在数据库规范化或“第三种标准形式”上搜索谷歌,以了解如何构造关系数据库(例如,“关系”一词的含义)-只需避开维基百科,因为它枯燥无味且理论性很强