TXT樹形分類文本一鍵導入數據庫(快速無限極分類方法)

TXT文本格式


一級分類

    二級分類

        三級分類

一級分類

    二級分類

一級分類

.....


(注意:一級分類前不能有TAB鍵,每層分類前面加一TAB鍵)


以下是PHP處理代碼


    

public function txt_category_to_mysql(){
$ceng = 0;
$arr = file('Public/fenlei.txt');
foreach($arr as $k=>$v){
if(strrpos($v,"") === false){
$fid = 0;
}else if(strrpos($v,"") > $ceng || $ceng === false){
$fid = $id;
}else if(strrpos($v,"") === $ceng){
$row = M('category')->where("id = '$id'")->find();
$fid = $row['fid'];
}else{
$fid = $this->txt_category_to_mysql_get_father_category($ceng - strrpos($v,""),$id);
}
$ceng = strrpos($v,"");
$name = str_replace("",'',$v);
$name_arr = explode(',',$name);
if($name_arr[1]){
$type = $name_arr[1];
}else{
$type = $father_type;
}
$id = M('category')->add(array('name'=>str_replace("",'',$v),'fid'=>$fid,'postTime'=>time()));
//插入數據庫,這個是ThinkPHP的SQL操作,請自行更換適合你的SQL語句,數據如上
}
}
public function txt_category_to_mysql_get_father_category($ceng,$id){
$row = M('category')->where("id = '$id'")->find();
$fid = $row['fid'];
for($i=0;$i<$ceng;$i++){
$row = M('category')->where("id = '$fid'")->find();
            //這個是ThinkPHP的SQL查詢,請自行更換適合你的SQL語句,數據如上
$fid = $row['fid'];
if($fid === 0){
break;
}
}
return $fid;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章