本文實例講述了PHP遞歸寫入MySQL實現無限級分類數據操作。分享給大家供大家參考,具體如下:
PHP遞歸寫入MySQL無限級分類數據,表結構:
CREATE TABLE `kepler_goods_category` ( `id` int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, `parentid` int unsigned NOT NULL default 0 comment 父級分類ID , `name` varchar(255) NOT NULL default comment 分類名稱 , `kepler_fid` int unsigned NOT NULL default 0 comment 對應開普勒分類ID , `create_time` timestamp NOT NULL default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP) ENGINE=InnoDB DEFAULT CHARSET=utf8;
遞歸方法寫入代碼:
static public function addCategoryFromKepler($fid, $parentid = 0){ $category_list = Kepler::queryGoodsCategoryList($fid); // 獲取數據 $category_list = $category_list[ jd_kepler_item_querycategoriesbyfid_response if($category_list[ total ] 0){ foreach ($category_list[ categories ] as $key = $value) { $parentid_sub = KeplerCategory::addCategory($value[ name ], $value[ id ], $parentid); // 插入數據庫,得到父ID self::addCategoryFromKepler($value[ id ], $parentid_sub); // 遞歸 return true;}
調用代碼:
KeplerCategory::addCategoryFromKepler(0);
遞歸方法讀取代碼:
static public function getCategoryFormatToKepler($parentid, $format_data = array(), $parent_prefix = , $current_prefix = ){ $category_list = self::getCategoryByParentid($parentid); // 根據父ID獲取 if(!empty($category_list)){ foreach ($category_list as $key = $value) { $format_data = self::getCategoryFormatToKepler($value[ id ], $format_data, $parent_prefix . , . $current_prefix, $value[ kepler_fid }else{ $format_data[] = trim($parent_prefix . , . $current_prefix, , return $format_data;}
調用代碼:
$category_list = KeplerCategory::getCategoryFormatToKepler(0);
以上就是PHP遞歸寫入MySQL實現無限級分類數據操作示例_php技巧的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答