实现步骤:

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处理行业分类数据的更多相关文章

  1. 中国网络安全行业分类及全景图2019H1

    中国网络安全行业分类及全景图2019H1   概述 中国网络安全行业分类及全景图: 一级分类包含了端点安全.网络安全.应用安全.数据安全.身份与访问管理和安全管理六个一级分类,这些一级分类分别对应了网 ...

  2. TreeView递归绑定无限分类数据

    TreeView递归绑定无限分类数据 实现一个动态绑定,无限级分类数据时,需要将数据绑定到TreeView控件,分类表的结构是这样的: 字段 类型 Id int ParentId int Name N ...

  3. python3 爬取boss直聘职业分类数据(未完成)

    import reimport urllib.request # 爬取boss直聘职业分类数据def subRule(fileName): result = re.findall(r'<p cl ...

  4. SAP QA32 做使用决策系统报错:分类数据的不一致性=>交易终止

    SAP QA32 做使用决策系统报错:分类数据的不一致性=>交易终止 QA32,对如下检验批做处理,系统报错, 试图使用MSC3N去显示这个批次主数据,同样报错, 原因在于批次的分类数据产生后, ...

  5. Python图表数据可视化Seaborn:2. 分类数据可视化-分类散点图|分布图(箱型图|小提琴图|LV图表)|统计图(柱状图|折线图)

    1. 分类数据可视化 - 分类散点图 stripplot( ) / swarmplot( ) sns.stripplot(x="day",y="total_bill&qu ...

  6. sklearn6_生成分类数据

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  7. seaborn分类数据可视化

    转载:https://cloud.tencent.com/developer/article/1178368 seaborn针对分类型的数据有专门的可视化函数,这些函数可大致分为三种: 分类数据散点图 ...

  8. Pandas分类数据

    通常实时的数据包括重复的文本列.例如:性别,国家和代码等特征总是重复的.这些是分类数据的例子. 分类变量只能采用有限的数量,而且通常是固定的数量.除了固定长度,分类数据可能有顺序,但不能执行数字操作. ...

  9. 【笔记】Pandas分类数据详解

    [笔记]Pandas分类数据详解 Pandas  Pandas分类数据详解|轻松玩转Pandas(5) 参考:Pandas分类数据详解|轻松玩转Pandas(5)

随机推荐

  1. BZOJ 2395 [Balkan 2011]Timeismoney(最小乘积生成树)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2395 [题目大意] 给出一张无向图,每条边上有a,b两个值,求生成树, 使得suma* ...

  2. 【拓扑排序】【bitset】Gym - 101128A - Promotions

    给你一张DAG,若选择u点,则必须先选择所有能到达其的点.问你在选择A个点的情况下,哪些点必选:选择B个点的情况下,哪些点必选:选择B个点的情况下,哪些点一定不选. 选择A个点的情况,必选的点是那些其 ...

  3. 【动态规划】CDOJ1271 Search gold

    方格取数. 但由于题意说金币数<0就死了,就不能继续转移. #include<cstdio> #include<algorithm> #include<cstrin ...

  4. Problem A: 深入浅出学算法022-汉诺塔问题II

    #include<stdio.h> void hanio(int n,char a,char b,char c) { ) printf("%c->%c\n",a, ...

  5. Problem H: 零起点学算法103——查找最大元素

    #include<stdio.h> #include<string.h> int main() { ]; while(gets(a)!=NULL) { ]; ;a[i]!='\ ...

  6. 洛谷 [AHOI2001]质数和分解

     题目描述 Description 任何大于 1 的自然数 n 都可以写成若干个大于等于 2 且小于等于 n 的质数之和表达式(包括只有一个数构成的和表达式的情况),并且可能有不止一种质数和的形式.例 ...

  7. HDU 5638 Toposort 拓扑排序 优先队列

    Toposort 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5638 Description There is a directed acycli ...

  8. Codeforces Gym 100269G Garage 数学

    Garage 题目连接: http://codeforces.com/gym/100269/attachments Description Wow! What a lucky day! Your co ...

  9. php 自动补位

    1  sprintf("%06d", 2); 2  str_pad();

  10. winform 使用SplashScreen窗口

    SplashScreen,就是平时我们说的溅射屏幕,任何一个做过客户端程序的coder应该对它都不陌生,因为它能提升用户体验,让软件看上去更美.SplashScreenForm通常进入程序时是打开,主 ...