<?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
相關文章
31 Jul 2023
利用PHP與百度地圖API實作靜態地圖的生成與顯示一、概述在許多Web應用中,需要根據使用者的需求產生並顯示地圖。本文將介紹如何利用PHP和百度地圖API產生和顯示靜態地圖。透過百度地圖API,我們可以靈活地控制地圖的大小、視野、標記點等內容,從而滿足不同場景下的需求。二、環境準備在開始之前,確保已經安裝好PHP以及對應的Web伺服器環境。同時,需要申請並獲取
27 May 2023
一、ThinkPHP資料庫操作在ThinkPHP中,我們可以透過它提供的資料庫操作類別來進行資料庫的操作。常用的資料庫操作類別有:Db類別在ThinkPHP中,我們可以使用Db類別來進行對資料庫的增、刪、改、查等操作。其使用範例如下:
25 Aug 2024
JPA(Java Persistence API)提供了幾個用於將 Java 類別對應到資料庫表的註解。一個這樣有用的註解是@MappedSuperclass,它用來指定一個類,其屬性必須由其他類別繼承。
03 Jun 2023
第三方類別庫 第三方類別庫指除了ThinkPHP框架、應用專案類別庫之外的其他類別庫,一般由第三方系統或產品提供,如Smarty、Zend等系統的類別庫等。 前面使用自動載入或import方法導入的類別庫,ThinkPHP約定是以.class.php為後綴的,非這類的後綴,需要透過import的參數來控制。 但對第三類庫,由於不會有此約定,其後綴只能認為是php。為了方便的引入其他框架和系統的類別庫,ThinkPHP特意提供了導入第三方類別庫的功能。第三方類別庫統一放置在ThinkPHP系統目錄/
19 Feb 2024
1.實體類別實體類別是Hibernate中最重要的概念之一,它表示資料庫中的一張表。實體類別中的屬性對應於表中的列,實體類別中的方法對應於表中的操作。 @EntitypublicclassUser{@Id@GeneratedValueprivateLongid;privateStringname;privateStringemail;//省略其他屬性和方法}2.資料存取物件資料存取物件(DAO)是Hibernate中另一個重要的概念,它負責對資料庫進行操作。 DAO通常是一個接口,它定義了對資料庫進行操作的