Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Parsowanie bardzo dużych plików XML w php

W PHP możesz czytać bardzo duże pliki XML za pomocą XMLReader :

$reader = new XMLReader();
$reader->open($xmlfile);

Ekstremalnie duże pliki XML powinny być przechowywane na dysku w skompresowanym formacie. Przynajmniej ma to sens, ponieważ pliki XML mają wysoki współczynnik kompresji. Na przykład spakowane gzipem jak large.xml.gz .

PHP obsługuje to całkiem dobrze dzięki XMLReader za pomocą opakowań kompresji :

$xmlfile = 'compress.zlib://path/to/large.xml.gz';

$reader = new XMLReader();
$reader->open($xmlfile);

XMLReader pozwala operować na bieżącym elemencie „tylko”. Oznacza to, że jest tylko do przodu. Jeśli chcesz zachować stan parsera, musisz go zbudować samodzielnie.

Często uważam za pomocne zawinięcie podstawowych ruchów w zestaw iteratorów, które wiedzą, jak operować na XMLReader jak iteracja tylko po elementach lub elementach podrzędnych. Znajdziesz to opisane w Parse XML za pomocą PHP i XMLReader .

Zobacz także:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. zmień status harmonogramu zdarzeń w mysql

  2. Wyrażenie regularne mySQL w klauzuli where

  3. Zmienić domyślny zestaw znaków MySQL na UTF-8 w my.cnf?

  4. Jak wybrać pierwsze N ​​wierszy na grupę w MySQL?

  5. Mysqli nie pozwala na wiele zapytań?