Как проверить, установлен ли SimpleXML на моем PHP или нет?
кто-нибудь знает? Эта штука установлена по умолчанию. Но есть простой способ проверить, установлено ли расширение или нет?
Я проверяю, что simplexml_load_string доступен мне, но как сделать simplexml не указан на php.ini
6 ответов
есть и другой путь. Вы можете создать страницу php
<?php
echo phpinfo();
?>
вы можете увидеть простой XML включен или отключен здесь.
это работает для меня...
extension_loaded('simplexml')
пример:
if (extension_loaded('simplexml')) {
echo "all good, extension is installed";
} else{ echo "snip snap! no cigar";}
используйте эту команду в командной строке:
php-i / grep-i simplexml
результат должен быть примерно таким:
SimpleXML
поддержка Simplexml = > включено
Если у вас есть доступ к командной строке на вашем окне;
либо используйте систему управления пакетами вашей ОС, либо запустите php -m
который должен перечислять все установленные модули, о которых знает PHP.
Любой модуль, который был установлен, но не зарегистрирован как расширение в PHP.ini или где-либо еще не появится.
редактировать
следует отметить, что выполнение этой команды только скажет вам, какие расширения включены для двоичного кода CLI/config PHP. Это вообще, но не может всегда быть, соответствовать тому, что Apache / fpm binary / config включил
одно решение, которое я использую:
if(class_exists('XMLReader')){
}elseif(function_exists('simplexml_load_file')){
//simplexml available
}else{
}
echo '<pre>';
print_r( get_loaded_extensions());
echo '</pre>';
Это покажет вам список расширений. Затем просто использовать in_array() если вы хотите, чтобы ваше приложение, чтобы грамотно рассказать пользователям, что их установка не будет работать ваш код.
EDIT в любом случае это относится к 5.2.6 на win32.