使用PHP中的数组存储多个值

时间:2014-03-07 06:52:42

标签: php mysql arrays

我想知道如何通过parent,child和subchild插入多个数组值。我的数组值为:

Array
(
 [Gift] => Array
    (
        [SILVER] => Array
            (
                [0] => SILVER GLASS
                [1] => SILVER COIN GIFT
            )
    )
 [Electronics] => Array
    (
        [watch] => Array
            (
                [0] => Fasttrack
                [1] => Titan
            )
    )
 )

Gift Array是父类别,SILVER数组是Gift的子类别,第三个子数组是SILVER的子类。如何动态插入父,子和子子的值?你能帮我看看数组值是如何使用PHP和MySQL插入的。

2 个答案:

答案 0 :(得分:0)

最好的方法是使用递归,例如

    |  id  |     name      |  parent  |
    |   1  |  Electronics  |    0     |
    |   2  |     Watch     |    1     |

在父列中,您需要保存父ID,例如,有一个名为'Electronics'的行,另一个名为'Watch',第一行的父ID为'0',因此这意味着该行是类别,但是另一行的父ID为1,因此该行是Electronics的子级。

答案 1 :(得分:0)

我试过它有一个表结构id_cat,cat_name,cat_parent

代码是:

$arraytest=//given array;
repeateIt($arraytest,0);
function repeateIt($arr,$i) {
global $link;
foreach ($arr as $key => $value) {
    if(is_array($value)){
        $id=  mysqli_query($link,"INSERT INTO category values (NULL,'{$key}',{$i})");
        repeateIt($value,$i+1);
    }else{
        $id=  mysqli_query($link,"INSERT INTO category values (NULL,'{$value}',{$i})");
    }
}

}