Класс «XSLTProcessor» не найден

Я пытаюсь преобразовать XML-файл в вывод HTML с помощью XSLT.

Мой код выглядит следующим образом:

<?php $xml = new DOMDocument; $xml->load('file.xml'); $xsl = new DOMDocument; $xsl->load('file.xsl'); $proc = new XSLTProcessor; $proc->importStyleSheet($xsl); echo $proc->transformToXML($xml); ?> 

Но я получаю сообщение об ошибке: Fatal error: Class 'XSLTProcessor' не найден

Я знаю, что это связано с тем, что xsltprocessor не скомпилирован с PHP на моем сервере … Но я не могу найти способ его включить. (Я не контролирую сервер, но мой хостинг делает)

Просто установите: sudo apt-get install php5-xsl

И RESTART ваш сервер APACHE;)

Я не контролирую сервер

Расширение PHP XSL может быть установлено и включено только с помощью sysadmin.

Хотя он по умолчанию компилируется , он обычно не устанавливается по умолчанию, когда сервер использует предварительно упакованную версию PHP. Попросите вашего хоста установить пакет php-xml , если вы находитесь в * nix. Если вы размещаете в Windows, это становится немного более привлекательным, так как для этого требуется найти правильный .dll-файл (который может быть включен или не включен в официальный дистрибутив) и редактировать php.ini.

С apache2 / php5 вам необходимо установить и включить расширение php5-xsl.

http://php.net/manual/en/book.xsl.php дает информацию о том, как установить расширение xsl. Чтобы включить, поместите строку «extension = php_xsl.so» в ваш файл php.ini.

Если он все еще не работает, создайте новый .php-файл на своем сервере, содержащий строку «». Загрузите только что созданный файл и найдите «xsl», чтобы узнать, действительно ли загружается расширение.

Необходимо установить расширение XLS.

Мое решение в моем контексте.

Я использую один контейнер докеров, содержащий базу ubuntu и использую php-fpm (т. Е. Если вы просто уже используете linux ubuntu в том же).

Шаги по установке этого расширения в моем контексте:

Первый поиск расширения xsl в репозитории linux
sudo apt-cache search xsl

Я закончил поиск php5-xsl, поэтому он был установлен только
sudo apt-get install php5-xsl

что процесс установки настроек конфигурации уже добавлен, если этого не происходит, просто сделайте сами
sudo vim /etc/php5/mods-available/xsl.ini

вставьте этот контент:
extension=xsl.so

(очевидно, что пути соответствуют вашим настройкам конфигурации php, но мой пример – это конфигурация по умолчанию)

Перезапустите php fpm и выполните ( sudo service php5-fpm restart )!

Если ваша php-среда находится в Linux, вы, вероятно, можете включить расширение php, используя следующую команду:

 yum install php-xml 

Если это система Windows, вы можете войти в свой конфигурационный файл php.ini и раскомментировать расширение php_xml.dll.

Надеюсь, это поможет. Быстрый поиск в Google может отвечать на такие вопросы в будущем.