Heim PHP-Bibliotheken Andere Bibliotheken PHP-Klasse, die eine Baidu-Sitemap-Sitemap generiert
PHP-Klasse, die eine Baidu-Sitemap-Sitemap generiert
<?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. "不可写,请检查!");
      }

Nehmen Sie zuerst 1000 Daten heraus (die flexibel zur späteren Änderung gespeichert werden können) und generieren Sie dann Dateien im XML-Format in einer Schleife. file_puts_contents schreibt Dateien. Schreiben Sie dann den Namen der generierten XML-Datei, die minimale ID der abgerufenen Frage, die maximale ID der abgerufenen Frage und die Anzahl der abgerufenen Fragen in eine TXT-Datei für die Indexabfrage. Das Format ist ungefähr so.
0,3146886,3145887,1000
Haben Sie festgestellt, dass die letzte Zahl 1000 ist? Nehmen Sie bei der ersten Auswahl 1000 Daten heraus und schreiben Sie sie dann in die 0.xml-Datei. Schreiben Sie den Namen der extrahierten XML-Datei, die minimale ID, die maximale ID und die Anzahl der Einträge in die Indexabfrage txt. Zum ersten Mal wurden 1.000 Daten in 0.xml geschrieben und die Anzahl der generierten Daten betrug 1.000. Die Select-Anweisung wird bei der zweiten Abfrage angezeigt. wobei id > die maximale herausgenommene ID ist (derzeit ist MySQL eine Vorwärtsreihenfolge-Abfrage, wenn sie in umgekehrter Reihenfolge erfolgt, ändern Sie sie auf weniger als) 1000 begrenzen In diesem Fall nehmen Sie 1000 heraus und ändern dann die minimale ID und die maximale ID der Indexabfrage txt und addieren Sie die Anzahl der generierten Elemente zu 2000 . Wenn die Anzahl der generierten Elemente 5.000 erreicht, schreiben Sie analog eine weitere Zeile in die Indexdatei, ähnlich wie
0,3146886,3145887,5000
1,3148886,3147887,1000
Durch das Schreiben auf diese Weise wird der Druck auf den Server verringert.

Haftungsausschluss

Alle Ressourcen auf dieser Website werden von Internetnutzern bereitgestellt oder von großen Download-Sites nachgedruckt. Bitte überprüfen Sie selbst die Integrität der Software! Alle Ressourcen auf dieser Website dienen nur als Referenz zum Lernen. Bitte nutzen Sie diese nicht für kommerzielle Zwecke. Andernfalls sind Sie für alle Folgen verantwortlich! Wenn ein Verstoß vorliegt, kontaktieren Sie uns bitte, um ihn zu löschen. Kontaktinformationen: admin@php.cn

Verwandter Artikel

Wie integriere ich externe Bibliotheken in IntelliJ IDEA-Artefakte? Wie integriere ich externe Bibliotheken in IntelliJ IDEA-Artefakte?

23 Dec 2024

Einbinden externer Bibliotheken in IntelliJ IDEA-ArtefakteUm externe Bibliotheken nahtlos in Ihre IntelliJ IDEA-Artefakte zu integrieren,...

JeKa: Der einfachste Weg, mit Java for Real zu beginnen JeKa: Der einfachste Weg, mit Java for Real zu beginnen

06 Jan 2025

JeKa ist ein modernes Java-Build-Tool, bei dem Einfachheit im Vordergrund steht. Wenn Entwickler mit Java beginnen, schreiben sie normalerweise einfach Code, kompilieren ihn und führen ihn aus. Dies reicht jedoch nicht aus, um nützliche Java-Anwendungen oder -Bibliotheken zu erstellen, die andere wiederverwenden können. Zu b

Wie kann ich den Schnittpunkt zweier JavaScript-Arrays finden, ohne externe Bibliotheken zu verwenden? Wie kann ich den Schnittpunkt zweier JavaScript-Arrays finden, ohne externe Bibliotheken zu verwenden?

28 Dec 2024

Array-Schnittpunkte in JavaScript ohne Bibliotheken findenUm den Schnittpunkt zweier Arrays ohne die Verwendung zusätzlicher Bibliotheken zu bestimmen,...

Wie können Bibliotheken auf Konfigurationseinstellungen zugreifen, ohne app.config zu verwenden? Wie können Bibliotheken auf Konfigurationseinstellungen zugreifen, ohne app.config zu verwenden?

01 Jan 2025

Bereitstellung von Konfigurationseinstellungen für Bibliotheken: Eine Alternative zu App.configIm Gegensatz zu ausführbaren Anwendungen verfügen Bibliotheken (DLLs) nicht über direkte...

Wie kann ich Methodenaufrufe in C# ohne externe Bibliotheken abfangen? Wie kann ich Methodenaufrufe in C# ohne externe Bibliotheken abfangen?

15 Jan 2025

Methodenaufrufe in C# ohne Bibliotheken von Drittanbietern abfangenUm Methodenaufrufe in C# ohne Verwendung externer Bibliotheken abzufangen, gibt es mehrere Ansätze...

Welche Java-Bibliotheken ermöglichen das anpassbare Parsen von SQL-Anweisungen? Welche Java-Bibliotheken ermöglichen das anpassbare Parsen von SQL-Anweisungen?

18 Jan 2025

SQL-Parser-Bibliotheken für JavaFrage: Gibt es Open-Source-Java-Bibliotheken zum Parsen von SQL-Anweisungen? Vorzugsweise anpassbar genug, um...

See all articles