Пользовательский тег в HTML и парсер с php

У меня проблема и мне нужна твоя помощь. я хочу использовать свой собственный тег в коде моего скрипта, например [tag], и проанализировать весь HTML-код, затем проанализировать коды и заменить эти теги на php-код или мой выводной мир и повторить мой вывод.

простой код:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>[MY_PAGE_TITLE]</title>
</head>
    <header></header>
        <div class="left">[MY_WEBSITE_LEFT_SIDEBAR_INFORMATION]</div>
            <article>[MY_WEBSITE_ARTICLE]</article>
        <div class="right">[MY_WEBSITE_RIGHT_SIDEBAR_INFORMATION]</div>
    <footer></footer>
<body>
</body>
</html>

мой первый тег [MY_PAGE_TITLE] должен быть заменен одним миром, таким как "мой сайт", я хочу использовать это для моего языкового сайта. я получаю это слово из массива, как:

mylangarray [
     MY_PAGE_TITLE="my website"
]

но для любого другого тега я хочу загрузить модуль слева или справа или загрузить статью из моей БД

Как я могу это сделать?

1 ответ

Я решил свою проблему Если у вас есть эта проблема, вы можете использовать этот метод.

шаг1: вы определяете свой пользовательский тег в файле основного вида, а затем на стороне сервера с помощью функции PHP ob_start запускаете буфер вывода, затем требуете или require_once или включаете или включаете ваш файл. Теперь с помощью определения переменной и функции ob_get_contents в PHP сохраните весь код файла в переменной. как это:

$html = ob_get_contents();

теперь у вас есть все представления файла в переменной.

Вы можете очистить свой буфер с помощью функции ob_end_clean.

пример:

ob_start();
require_once 'mainViewFile.php';
$html = ob_get_contents();
ob_end_clean();

шаг 2: вы можете использовать функцию str_replace для замены вашего пользовательского тега новыми данными.

$leftSideBarInformation = 'We stored left bar information in this variable!';
$html = str_replace('[MY_WEBSITE_LEFT_SIDEBAR_INFORMATION]', $leftSideBarInformation, $html);

если у вас есть массив пользовательских тегов, вы можете использовать цикл foreach.

Другие вопросы по тегам