Похоже, что проблема заключается в путанице того, что делается на стороне сервера, и того, что делается на стороне клиента. Modernizr - это библиотека JavaScript.Размещение его кода в блоках PHP ничего не сделает для вас, поскольку PHP - это серверная технология, а JavaScript - нет.
Альтернативой может быть использование PHP для предоставления JavaScript необходимых данных, а затем использование JavaScript дляопределите HTML-код для отображения.
<script>
if (Modernizr.video) {
document.write('<video id="video" src="<?php echo 'video.ogv'; ?>" autoplay />');
} else {
document.write('<img src="<?php echo 'text.jpg'; ?>" />');
}
</script>
Вы должны поместить этот код в HTML-код, где вы хотите показывать видео / изображение.Обратите внимание, что мы используем PHP для отображения имен файлов.Это позволяет вам динамически предоставлять имена файлов.Чтобы воспользоваться возможностями HTML5, я бы порекомендовал поместить имена файлов в атрибуты data- * HTML5, а затем использовать JavaScript для одновременной обработки всех видео.
<div class="has-video" data-video="<?php echo 'video.ogv'; ?>" data-image="<?php echo 'text.jpg'; ?>"></div>