PHP+MySQL. Использую XMLReader для импорта в БД XML-файлов (товарные фиды), так как XML-файлы большие (от 1 до 10 ГБ), кодировка UTF-8. Инструмент LOAD DATA XML в моем случае не подходит, так как не импортирует вложенные теги, и другие нюансы есть...
Так вот. Все вроде бы не плохо идет, но встречаются XML-файлы c недопустимыми символами. Как только $reader->read() встречает такие текстовые данные в текущем читаемом теге, то прекращает свою работу предупреждением:
parser error : PCDATA invalid Char value 12 in ... on line 181
PHP Warning: XMLReader::read():
При этом php-скрипт продолжает работу, но XML дальше не читает. XML разбираю циклом:
while ($reader->read()) {
...
}
Как заставить XMLReader продолжать чтение, при встрече недопустимых символов, пусть даже с потерей текущего элемента?
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости