php 所有子類,php獲取分類以下的全部子類方法

2021-10-25 21:26:25 字數 956 閱讀 8375

獲取分類以下的全部子類方法:

static function getmenutree($arrcat, $parent_id = 0, $level = 0,$all=true)

static $arrtree; //使用static取代global

if(!$all) $arrtree ='';

if( empty($arrcat)) return false;

$level++;

if($level == 1) $arrtree = $parent_id;

foreach($arrcat as $key => $value)

if($value['parent_cid' ] == $parent_id)

//$value[ 'level'] = $level;

$arrtree = $value['cid'];

unset($arrcat[$key]); //登出當前節點資料,降低已沒用的遍歷

self::getmenutree($arrcat, $value[ 'cid'], $level);

return $arrtree;

用上面這種方法的前提是要把分類寫到快取檔案裡。快取檔案寫入方法例如以下:

public function actionindex2()

$arr = array();

$listinfo = $db->createcommand("select name,cid,parent_cid,root_cid from item_cat_info")->queryall();

foreach($listinfo as $val)

$arr[$val['cid']] = array('cid'=>$val['cid'],'name'=>$val['name'],'parent_cid'=>$val['parent_cid'],'root_cid'=>$val['root_cid']);

獲取類的所有子類

開發過程中,有時需要獲取某個包下的所有類,或者基於指定規則獲取類清單。比較常見的解決方案是自己遍歷目錄,查詢所有.class檔案。下面這個方法使用spring工具類實現,簡化過程,不再需要自己遍歷目錄 獲取在指定包下某個class的所有非抽象子類 param parentclass 父類 param...

php 無限級分類 獲取頂級分類ID

有這樣乙個表,id是分類的id,name是分類名稱,pid是上級分類的id。現在有個分類id,程式要找到它上級的上級的上級 分類的id,簡單說就是找出頂級分類的id。比如 新鮮水果 的id是13,對應父類id是5,而5的父id是1,1沒有父類,也就是頂級分類了。以前年輕氣盛不懂事,總想著用遞迴來查詢...

php返回類中方法,php如何獲取類中所有的方法名

php獲取類中所有的方法名的方法 可以利用 get class methods 函式來獲取,get class methods 函式可以返回指定類中所有的方法名,並且會將方法名儲存到陣列中。php獲取類所有方法名的方法 1.獲取行號 檔案路徑檔名 類名 方法名的常量 line 檔案中的當前行號。fi...