$categories[$upid]['children'][] = $key;例如 $upid=1, $key=2;
$categories[$upid]['children'][] = $key;
等于
$categories[1]['children'] 是一个数组,然后$key作为插入到数组最后。
执行完后
$categories = array(
1 => array(
'children' => array(2)
)
);
categories[$upid]['count'] += $categories[$key]['count'];
等于
categories[$upid]['count'] = categories[$upid]['count'] + $categories[$key]['count'];
$categories[$key]['parent'][$upid] = $categories[$upid]['catname'];
$upid = $categories[$upid]['upid'];
这两句都是直接赋值。
$categories[$upid]['children'][] = $key;
等于
$categories[1]['children'] 是一个数组,然后$key作为插入到数组最后。
执行完后
$categories = array(
1 => array(
'children' => array(2)
)
);
categories[$upid]['count'] += $categories[$key]['count'];
等于
categories[$upid]['count'] = categories[$upid]['count'] + $categories[$key]['count'];
$categories[$key]['parent'][$upid] = $categories[$upid]['catname'];
$upid = $categories[$upid]['upid'];
这两句都是直接赋值。
categories[$upid]['count'] += $categories[$key]['count']; 我知道你说的等同categories[$upid]['count'] = categories[$upid]['count'] + $categories[$key]['count'];,但是我不知道这样相加之后是怎样?? 二维数组+二维数组等于多少?? $categories[$key]['parent'][$upid] = $categories[$upid]['catname']; 这个我也知道是复制,但是我不知道二维数组付值给三维数组,,这个三维数组的结构是怎样的. 我对这些数组都很恐惧,总是不太清楚,请详细说下.我有一本书,后面的项目都有这些数组,我的头很大压力大.....
例如
$arr = array('key'=>array());$arr['key'][] = 1;
$arr['key'][] = 2;
$arr['key'][] = 3;执行后.
$arr = array(
'key' => array(1,2,3)
);$categories[$upid]['count'] = $categories[$upid]['count'] + $categories[$key]['count'];
categories[$upid]['count'] 與 $categories[$key]['count'] 是應該是兩個數值,所以可以相加。
你可以print_r($categories); 看看$categories裡面是什麼。$categories[$key]['parent'][$upid] = $categories[$upid]['catname']; 這個可以簡單點
$key = 'a';
$upid = 'b';$categories[$key]['parent'][$upid] = 1;
$categories[$upid]['catname'] = 2;
相當於
$categories['a']['parent']['b'] = 1;
$categories['b']['catname'] = 2;執行
$categories[$key]['parent'][$upid] = $categories[$upid]['catname'];
相當於
$categories['a']['parent']['b'] = $categories['b']['catname']; 所以
$categories[$key]['parent'][$upid] = 2;
在这段代码的前后分别 print_r($categories);
一切净收眼底