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)
随机推荐
- 【计算几何】【圆反演】hdu6097 Mindis
给你一个中心在原点的圆,再给你俩在圆内且到原点距离相等的点P,Q,让你在圆上求一点D,最小化DP+DQ. http://blog.csdn.net/qq_34845082/article/detail ...
- 【GCD】AtCoder Grand Contest 018 A - Getting Difference
从大到小排序,相邻两项作差,求gcd,如果K是gcd的倍数并且K<=max{a(i)},必然有解,否则无解. 可以自己手画画证明. #include<cstdio> #include ...
- 【后缀自动机】poj1509 Glass Beads
字符串最小表示 后缀自动机 O(n) 把串复制一次,链接在后面之后,建立SAM,贪心地在SAM上转移,每次贪心地选择最小的字符,转移的长度为n时停止. 输出时由于要最靠前的,所以要在endpos集合中 ...
- 求数组的平均值 Exercise07_08
import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:求数组的平均值 * */ public class Exercise07_ ...
- Problem H: 零起点学算法109——单数变复数
#include <stdio.h> #include<string.h> int main(void) { int n; ]; scanf("%d",&a ...
- [转]web.xml中webAppRootKey
web.xml中webAppRootKey ------------------------------------------------------------------------------ ...
- 使用MailKit收发邮件
.Net BCL库中对于邮件的支持只有SmtpClient一个,它只能进行简单的邮件的发送操作,并且不支持POP3和SMTP,无法接收邮件,用起来有诸多不便. 今天看到园子里有文章(使用 MimeKi ...
- System.Object 基类
System.Object在.Net中是所有类型的基类,任何类型都直接或间接地继承自System.Object.没有指定基类的类型都默认继承于System.Object. 基类特性 正由于所有的类型都 ...
- Android学习进阶路线导航线路(Android源码分享)
转 ...
- jquery缩写,显示隐藏
$(".a").css("display")=="none" ?$(".a").css("display&qu ...