(PHP 5, PHP 7, PHP 8)
DOMImplementation::hasFeature — Проверяет, реализует ли DOM-реализация интерфейс конкретного модуля DOM
   Метод проверяет, реализует ли реализация feature
   интерфейс конкретного модуля DOM.
  
Список модулей перечисляет раздел стандарта DOM » Согласование.
featureНазвание модуля для проверки.
version
       Номер версии модуля feature.
       Для стандарта DOM level 2 метод принимает либо значение 2.0,
       либо значение 1.0.
      
   Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
  
| Версия | Описание | 
|---|---|
| 8.0.0 | Теперь статический вызов метода выбросит исключение Error.
        Раньше метод выдавал ошибку уровня E_DEPRECATED. | 
Пример #1 Тестирование реализации DOM
<?php
$features = array(
  'Core'           => 'Core module',
  'XML'            => 'XML module',
  'HTML'           => 'HTML module',
  'Views'          => 'Views module',
  'Stylesheets'    => 'Style Sheets module',
  'CSS'            => 'CSS module',
  'CSS2'           => 'CSS2 module',
  'Events'         => 'Events module',
  'UIEvents'       => 'User interface Events module',
  'MouseEvents'    => 'Mouse Events module',
  'MutationEvents' => 'Mutation Events module',
  'HTMLEvents'     => 'HTML Events module',
  'Range'          => 'Range module',
  'Traversal'      => 'Traversal module'
);
$implementation = new DOMImplementation();
foreach ($features as $key => $name) {
  if ($implementation->hasFeature($key, '2.0')) {
    echo "Реализация реализует интерфейс $name\n";
  } else {
    echo "Интерфейс $name отсутствует\n";
  }
}
?>
