<?php /* * SiteMap接口类 */ class SitemapAction extends Action{ private static $baseURL = ''; //URL地址 private static $askMobileUrl = 'http://m.xxx.cn/ask/'; //问答移动版地址 private static $askPcUrl = "http://www.xxx.cn/ask/"; //问答pc地址 private static $askZonePcUrl = "http://www.xxx.cn/ask/jingxuan/"; //问答精选Pc链接 private static $askZoneMobileUrl = "http://m.xxx.cn/ask/jx/"; //问答精选移动版链接 //问答setmaps public function askSetMap(){ header('Content-type:text/html;charset=utf-8'); //获取问题列表 $maxid = 0; //索引文件最大id $minid = 0; //索引文件最小id $psize = 1000; //数据库每次取数量 $maxXml = 5000; //xml写入记录数量 $where = array(); //读取索引文件 $index = APP_PATH.'setmapxml/Index.txt'; //关联setmaps路径 $askXml = "../siteditu/ask/ask.xml"; if(!file_exists($index)){ $fp=fopen("$index", "w+"); if ( !is_writable($index) ){ die("文件:" .$index. "不可写,请检查!"); }
首先取出1000条数据(可以灵活些成活的,方便以后修改),然后循环生成xml格式文件。file_puts_contens写入文件。然后再把生成的xml文件名称、取出问题的最小id、取出问题的最大id、取出问题的条数写出一个索引查询的txt文件当中,格式大概是这个样子的。
0,3146886,3145887,1000
发现最后面的条数是1000了吗、第一次select取出1000条数据、然后写入0.xml文件当中。把取出的xml文件名称、最小id、最大id、条数写入到索引查询txt中。第一次写入了1000条数据到0.xml、生成条数为1000。第二次查询的时候select语句会成为。 where id > 取出的最大id(当前mysql为正序查询、如果为倒序、改成小于) limit 1000 这样的话又取出1000、然后修改索引查询txt的最小id、最大id、生成条数加到2000。以此类推等生成条数到了5000的时候再另起一行写入索引文件、类似这样
0,3146886,3145887,5000
1,3148886,3147887,1000
这样写的话就减轻了服务器的压力。
本站所有资源均由网友贡献或各大下载网站转载。请自行检查软件的完整性!本站所有资源仅供学习参考。请不要将它们用于商业目的。否则,一切后果由您负责!如有侵权,请联系我们删除。联系方式:admin@php.cn
相关文章
![为什么我的 JNI 项目找不到依赖库?](https://img.php.cn/upload/article/001/246/273/173213569482091.jpg)
21Nov2024
解决 UnsatisfiedLinkError: Can't Find Dependent Libraries in JNI Projects当开发 Java Native Interface (JNI) 项目时,您可能...
![phpmyadmin不显示登录页面](https://img.php.cn/upload/article/000/000/039/5db90ac1ae7a5772.jpg)
30Oct2019
phpmyadmin不显示登录页面解决方法:找到并打开phpMyAdmin\libraries\plugins\auth\AuthenticationCookie.class.php文件,将其中关于登录页面代码中的两处hide删除即可。
![如何修复 phpMyAdmin 中的'count():参数必须是实现可数的数组或对象”错误?](https://img.php.cn/upload/article/001/246/273/172940007066319.jpg)
20Oct2024
phpMyAdmin 错误:“count():参数必须是实现可数的数组或对象”您是否遇到过 phpMyAdmin 错误,指出“./libraries/sql.lib.php#601\ncount() 中的警告:参数必须是数组或对象
![dacom.dll - 什么是 dacom.dll?](https://img.php.cn/upload/article/001/246/273/172930101134831.png)
19Oct2024
dacom.dll 在我的计算机上做什么? dacom.dll 是 Microsoft Corporation 创建的 Digital Anvil Component Libraries 使用的 DLL 文件。此过程仍在审核中。 dacom.dll 等非系统进程源自您安装的软件
![如何使用 CSS 网格布局创建砌体网格,其中每个元素具有相同的宽度,但底部元素始终低于顶部元素 50px?](https://img.php.cn/upload/article/001/246/273/173181450333691.jpg)
17Nov2024
Create a Masonry Grid with CSS Grid Layout (or Other CSS)该问题询问一种在 CSS 中实现砖石网格效果的方法...
![ctvcal.dll - 什么是 ctvcal.dll?](https://img.php.cn/upload/article/001/246/273/172904667043708.png)
16Oct2024
ctvcal.dll 在我的计算机上做什么? ctvcal.dll 是属于 Oracle Corporation 的 Oracle Calendar Libraries 的一个模块。 ctvcal.dll 等非系统进程源自您系统上安装的软件。由于大多数应用程序
![](/static/imghwm/down_right.png)
![](/static/imghwm/taglogo.png)
Hot Tools
![](/static/imghwm/taglogo.png)