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; }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。