Чтение html с php-файла и выполнение php-кода внутри файла - PullRequest
0 голосов
/ 08 декабря 2011

Может кто-нибудь подсказать мне запустить php внутри html-файла, который открыт внутри php-файла.

Это так.

У меня есть HTML-файл, подобный этому:

<html>
    <head>
        <title></title>
    </head>
    <body>
        <h1>Some heading</h1>
        <? $sometekst_variable ?>
    </body>
</html>

Что мне нужно, так это открыть файл внутри моей функции php и позволить функции запустить php внутри файла.Переменная php будет установлена ​​внутри функции, в которой читается файл.

Есть ли способ сделать это?

Ответы [ 2 ]

3 голосов
/ 08 декабря 2011

Используйте , включая .В верхнем файле сделайте что-то вроде

include('otherfile.php');
0 голосов
/ 08 декабря 2011

Вы можете сделать это с помощью require 'that_template_file';Если вы хотите перехватить вывод html этого файла (например, запустить его, но не выводить его в выходной поток), вы можете (должны) использовать выходные буферы, например, так:

<?php

function render($tpl) {
   // this way it would print out everything to the output, without a chance to grab that
   require $tpl; 
   // OR do it like this:
   ob_start();
   require $tpl;
   $parsed_result = ob_get_contents();
   // now you can print out the result or do something else with it...
   echo $parsed_result;
   // or return it
   return $parsed_result;
}

render('template.ext.php'); // note, it doesn't have to be .php... it can be anything

Также обратите внимание, чтовы можете вкладывать вызовы в ob_start, поэтому вы можете вкладывать функцию рендеринга.

Примерно так:

index.php: <?php render('template.inc.php'); ?>

template.inc.php: <div><?php render('header.inc.php'); ?></div>

и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...