php处理行业分类数据
实现步骤:
1.将excel表格存储为后缀名为 .csv格式的文件;
2.将.csv格式文件导入到mysql数据库中;
3.通过条件查询将所需要的数据查出并导入另一个数据表中;
下面是一些php片段:
<?php
mysql_connect("localhost", "root", "root") or
die("Could not connect: " . mysql_error());
mysql_select_db("test");
mysql_query("SET NAMES 'utf8'");
$result = mysql_query("SELECT col2, col5, col6 FROM category where col2!=''"); echo "INSERT INTO `qy_category` (`catid`, `moduleid`, `catname`, `catdir`,`linkurl`,`parentid`, `arrparentid`, `child`, `arrchildid`,
`listorder`, `seo_title`, `seo_keywords`, `seo_description`) VALUES "; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
//printf ("ID: %s Name: %s", $row["col2"], $row["col5"]);
//echo "<br />";
$result2 = mysql_query("SELECT col3, col5, col6 FROM category where col3 like '".$row["col2"]."%'");
$arr = array();
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
if($row2["col6"]=='') $row2["col6"]=$row2["col5"];
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', '%s', '%s', 0, '%s', '%s', '%s', '%s', '%s')",$row2["col3"],$row2["col5"],
$row2["col3"],$row2["col3"],$row["col2"],'0,'.$row["col2"].','.$row2["col3"],$row2["col3"],$row2["col3"],$row2["col5"],$row2["col5"],$row2["col6"]);
echo ",<br />";
$arr[]=intval($row2["col3"]);
}
$arrchildid = intval($row["col2"]).','.implode(',',$arr);
if($row["col6"]=='') $row["col6"]=$row["col5"];
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', 0, 0, 1, '%s', '%s', '%s', '%s', '%s')",$row["col2"],$row["col5"],
$row["col2"],$row["col2"],$arrchildid,$row["col2"],$row["col5"],$row["col5"],$row["col6"]);
echo ",<br />";
} mysql_free_result($result);
mysql_free_result($result2);
?>
下面的代码对分类进行了SEO:
<?php
mysql_connect("localhost", "root", "root") or
die("Could not connect: " . mysql_error());
mysql_select_db("test");
mysql_query("SET NAMES 'utf8'");
$result = mysql_query("SELECT col2, col5, col6 FROM category where col2!=''"); echo "INSERT INTO `qy_category` (`catid`, `moduleid`, `catname`, `catdir`,`linkurl`,`parentid`,
`arrparentid`, `child`, `arrchildid`, `listorder`, `seo_title`, `seo_keywords`, `seo_description`) VALUES "; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
//printf ("ID: %s Name: %s", $row["col2"], $row["col5"]);
//echo "<br />";
$result2 = mysql_query("SELECT col3, col5, col6 FROM category where col3 like '".$row["col2"]."%'");
$row["col2"] = intval($row["col2"])*100;
$arr = $arrname = array();
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
$result3 = mysql_query("SELECT col4, col5 FROM category where col4 like '".$row2["col3"]."%'");
$des = array();
while ($row3 = mysql_fetch_array($result3, MYSQL_ASSOC)) {
if(intval($row3["col4"])==intval($row2["col3"])*10) continue;
$des[] = $row3["col5"];
} $row2["col3"] = intval($row2["col3"])*10;
if($row["col2"]==$row2["col3"]) continue; if($row2["col6"]=='') $row2["col6"]=$row2["col5"];
if(count($des)>0) {
$row2["col6"]=$row2["col6"].",包括".implode(",",$des)."等具体分类";
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', '%s', '%s', 0, '%s', '%s', '%s', '%s', '%s')",$row2["col3"],
$row2["col5"],$row2["col3"],$row2["col3"],$row["col2"],'0,'.$row["col2"].','.$row2["col3"],$row2["col3"],$row2["col3"],
$row2["col5"],implode(" ",$des),$row2["col6"]);
} else {
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', '%s', '%s', 0, '%s', '%s', '%s', '%s', '%s')",
$row2["col3"],$row2["col5"],$row2["col3"],$row2["col3"],$row["col2"],'0,'.$row["col2"].','.$row2["col3"],$row2["col3"],
$row2["col3"],$row2["col5"],$row2["col6"],$row2["col6"]);
} echo ",<br />";
$arr[]=intval($row2["col3"]);
$arrname[]= $row2["col5"];
}
$arrchildid = intval($row["col2"]).','.implode(',',$arr);
if($row["col6"]=='') $row["col6"]=$row["col5"];
if(count($arrname)>0){
$row["col6"]=$row["col6"].",包括".implode(",",$arrname)."等分类";
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', 0, 0, 1, '%s', '%s', '%s', '%s', '%s')",$row["col2"],
$row["col5"],$row["col2"],$row["col2"],$arrchildid,$row["col2"],$row["col5"],implode(" ",$arrname),$row["col6"]);
} else {
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', 0, 0, 1, '%s', '%s', '%s', '%s', '%s')",$row["col2"],
$row["col5"],$row["col2"],$row["col2"],$arrchildid,$row["col2"],$row["col5"],$row["col6"],$row["col6"]);
} echo ",<br />";
} mysql_free_result($result);
mysql_free_result($result2);
?>
以上的代码只获取了大类和中类,没有使用门类和小类,不过将小类的描述加入到其中了。
获取门类代码:
<?php
mysql_connect("localhost", "root", "root") or
die("Could not connect: " . mysql_error());
mysql_select_db("test");
mysql_query("SET NAMES 'utf8'");
$result = mysql_query("SELECT col1, col5, col6 FROM category where col1!=''"); echo "INSERT INTO `qy_category` (`catid`, `moduleid`, `catname`, `catdir`,`linkurl`,`parentid`,
`arrparentid`, `child`, `arrchildid`, `listorder`, `seo_title`, `seo_keywords`, `seo_description`) VALUES "; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$pos = strpos($row["col6"], "~");
$begin = substr($row["col6"],$pos-2,2);
$end = substr($row["col6"],$pos+3,2);
if(!$pos){
$pos = strpos($row["col6"], "和");
$begin = substr($row["col6"],$pos-2,2);
$end = substr($row["col6"],$pos+3,2); if(!$pos){
continue;
$pos = strpos($row["col6"], "大");
$begin = $end = substr($row["col6"],$pos-2,2);
}
}
$begin = intval($begin);
$end = intval($end);
$arrname = $arr = array();
for($i = $begin; $i<= $end; $i++){
if(strlen($i)==1)
$i = '0'.$i;
$result2 = mysql_query("SELECT col2, col5, col6 FROM category where col2 like '".$i."%'");
while ($row2 = mysql_fetch_array($result2, MYSQL_ASSOC)) {
$arrname[] = $row2["col5"];
//$arr[] = intval($row2["col2"])*100;
}
} $row["col2"] = ord($row["col1"]);
//$arrchildid = intval($row["col2"]).','.implode(',',$arr);
$arrchildid = intval($row["col2"]);
if($row["col6"]=='') $row["col6"]=$row["col5"];
if(count($arrname)>0){
//$row["col6"]=$row["col6"].",包括".implode(",",$arrname)."等分类";
$search = substr($row["col6"],$pos-2,7);
$row["col6"] = str_replace($search, implode(",",$arrname).'等', $row["col6"]);
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', 0, 0, 1, '%s', '%s', '%s', '%s', '%s')",
$row["col2"],$row["col5"],$row["col2"],$row["col2"],$arrchildid,$row["col2"],$row["col5"],implode(" ",$arrname),$row["col6"]);
} else {
printf ("('%s', 4, '%s', '%s', 'list.php?catid=%s', 0, 0, 1, '%s', '%s', '%s', '%s', '%s')",
$row["col2"],$row["col5"],$row["col2"],$row["col2"],$arrchildid,$row["col2"],$row["col5"],$row["col6"],$row["col6"]);
}
echo ",<br />";
} mysql_free_result($result);
完结。
php处理行业分类数据的更多相关文章
- 中国网络安全行业分类及全景图2019H1
中国网络安全行业分类及全景图2019H1 概述 中国网络安全行业分类及全景图: 一级分类包含了端点安全.网络安全.应用安全.数据安全.身份与访问管理和安全管理六个一级分类,这些一级分类分别对应了网 ...
- TreeView递归绑定无限分类数据
TreeView递归绑定无限分类数据 实现一个动态绑定,无限级分类数据时,需要将数据绑定到TreeView控件,分类表的结构是这样的: 字段 类型 Id int ParentId int Name N ...
- python3 爬取boss直聘职业分类数据(未完成)
import reimport urllib.request # 爬取boss直聘职业分类数据def subRule(fileName): result = re.findall(r'<p cl ...
- SAP QA32 做使用决策系统报错:分类数据的不一致性=>交易终止
SAP QA32 做使用决策系统报错:分类数据的不一致性=>交易终止 QA32,对如下检验批做处理,系统报错, 试图使用MSC3N去显示这个批次主数据,同样报错, 原因在于批次的分类数据产生后, ...
- Python图表数据可视化Seaborn:2. 分类数据可视化-分类散点图|分布图(箱型图|小提琴图|LV图表)|统计图(柱状图|折线图)
1. 分类数据可视化 - 分类散点图 stripplot( ) / swarmplot( ) sns.stripplot(x="day",y="total_bill&qu ...
- sklearn6_生成分类数据
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
- seaborn分类数据可视化
转载:https://cloud.tencent.com/developer/article/1178368 seaborn针对分类型的数据有专门的可视化函数,这些函数可大致分为三种: 分类数据散点图 ...
- Pandas分类数据
通常实时的数据包括重复的文本列.例如:性别,国家和代码等特征总是重复的.这些是分类数据的例子. 分类变量只能采用有限的数量,而且通常是固定的数量.除了固定长度,分类数据可能有顺序,但不能执行数字操作. ...
- 【笔记】Pandas分类数据详解
[笔记]Pandas分类数据详解 Pandas Pandas分类数据详解|轻松玩转Pandas(5) 参考:Pandas分类数据详解|轻松玩转Pandas(5)
随机推荐
- 【计算几何】【极角排序】【二分】Petrozavodsk Summer Training Camp 2016 Day 6: Warsaw U Contest, XVI Open Cup Onsite, Sunday, August 28, 2016 Problem J. Triangles
平面上给你n(不超过2000)个点,问你能构成多少个面积在[A,B]之间的Rt三角形. 枚举每个点作为直角顶点,对其他点极角排序,同方向的按长度排序,然后依次枚举每个向量,与其对应的另一条直角边是单调 ...
- [转]spring tx:advice 和 aop:config 配置事务
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www. ...
- Hiho---欧拉图
欧拉路·一 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho最近在玩一个解密类的游戏,他们需要控制角色在一片原始丛林里面探险,收集道具,并找到最后的宝藏.现 ...
- GridControl事件
private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventA ...
- 【mybatis】mybatis中放置IN查询拼接sql过长,IN查询进行分批次查询的处理
需要使用的切割list集合的工具类,链接:https://www.cnblogs.com/sxdcgaq8080/p/9376947.html 处理逻辑,原本的一个LIst,进行切割,循环进行myba ...
- SQL Server 2008数据库备份与恢复
在这所要说的是“分离/附加”数据库: 1.分离数据库就是将某个数据库(如student_Mis)从SQL Server数据库列表中删除,使其不再被SQL Server管理和使用,但该数据库的文件(.M ...
- 组件prop检验
Vue.js中的父子组件相信都已经是大家很常用到的功能了, 父组件通过props属性向子组件传值子组件通过自定义事件向父组件传值 那么我们怎么去校验props属性中的类型呢 笔者列出以下几种方法: 1 ...
- 关于js加密解密
有的时候有些网站的js用简单的eval混淆加密了.解密其实很简单的 解密JS的eval加密码的方式例如这段: 很多朋友以为这段代码是“加密”的,其实这也谈不上是加密,只能算是一种编码(Encode)或 ...
- Maven+TestNG+ReportNG/Allure接口自动化测试框架初探(上)
转载:http://www.51testing.com/html/58/n-3721258.html 由于一直忙于功能和性能测试,接口自动化测试框架改造的工作被耽搁了好久.近期闲暇一些,可以来做点有意 ...
- Win7文件正在使用无法删除怎么办
Windows 7下删除文件提示被占用?系统内置工具搞定 Windows7之家(www.win7china.com):Windows7下删除文件提示被占用?系统内置工具搞定 在Windows中,删除文 ...