JDatabaseImporter

Класс предназначен для импорта структуры таблиц из формата XML.

Расположение
  • Базовый класс - /libraries/joomla/database/importer.php
  • Драйверы - /libraries/joomla/database/importer
Ссылка на API
JDatabaseImporter

Методы

asXml()
Устанавливает опцию ввода для импортера в формат XML.
check()
Проверяет, все ли параметры в порядке. Возвращает $this.
from($from)
Определяет источник данных для импорта. Возвращает $this.
$from - объект класса SimpleXMLElement или XML строка.
mergeStructure()
Импортирует структуру таблиц из XML и объединяет с существующей структурой.
setDbo(JDatabaseDriver $db)
Устанавливает коннектор базы данных, который будет использоваться для импорта структуры и / или данных. Возвращает $this.
$db - коннектор базы данных класса JDatabaseDriver.

Использование

Для начала работы получаем экземпляр класса через фабрику JDatabaseFactory:

$importer = JDatabaseFactory::getInstance()
    ->getImporter('mysqli', Factory::getDbo());

Загружаем файл с XML данными о структурах таблиц и импортируем:

$xml = simplexml_load_file('tables.xml');
$importer->from($xml)
    ->check()
    ->mergeStructure();
© 2019 BinaryCraft. Все права защищены.