Yii框架得到所有子类的方法的分类
静态函数getmenutree(arrcat美元,美元parent_id = 0,= 0美元美元的水平,所有= true)
{
静态arrtree美元; / /使用静态代替球
如果($美元arrtree = '!);
如果(空(美元arrcat))返回false;
美元+;
如果($ = = 1级)arrtree { } = parent_id美元美元;
foreach(arrcat美元美元美元关键=价值)
{
如果(美元价值{ 'parent_cid ' = $ parent_id)
{
/ /价值'level} = {美元水平;
arrtree美元{ } = { } 'cid美元的价值;
撤消($ arrcat { $关键});当前节点的数据 / /取消,减少无用的遍历
自::getmenutree(arrcat美元,美元的价值'cid{ },千元级);
}
}
返回的arrtree;
}
使用上述方法的前提是写分为缓存文件,和写缓存文件的方法如下:
公共功能actionindex2()
{
文件路径:美元= Yii:getpathofalias('application)。 / /数据;
ARR =阵列(美元);
美元::分贝= Yii应用()->数据库;
listinfo美元=美元DB -> createcommand(选择名称,CID,parent_cid,root_cid从item_cat_info )-> queryall();
foreach(listinfo美元美元价值)
{
ARR { $瓦尔{ 'cid美元} } =阵列('cid= >瓦尔{ 'cid美元'},'name' = > $瓦尔{ 'name' },'parent_cid= > 'parent_cid'} {美元价值,'root_cid= >瓦尔{ 'root_cid美元的});
}
= $ applist ;
file_put_contents($的路径。'itemcat。php,applist美元);
}