0

I want to change value of variable that was called before but should be changed after it. Like in this exapmle:

<img src="<?php echo $src; ?>" />
$src = 'some_src.jpg';

Maybe some kind of buffering or something? That should be done this way, cause I'm trying to make a kind of template engine:

$this->showHeader();
$this->showBody();

But the body is in another file. In this file i would call:

$this->header->setScript('somescript.js');

And that should change variables in header. But I can't call showBody() function before showHeader(). Sorry for my english. :(

4

2 に答える 2

0

私はこれを行う方法を見つけました。バッファリングは、私の仕事を達成する方法でした。

ページの body を head の前にエコーすることはできませんでしたが、可能性のある変数の変更を収集するために head の前に body を呼び出す必要がありました。だから私は body の内容をバッファに入れました:

ob_start();
$this->showBody();
$content = ob_get_clean();

変数の値を収集したので、それらを使用できます。

$this->showHeader();
echo $content;

ものすごく単純。

于 2013-11-01T19:55:06.213 に答える
0

呼び出した後に変数を宣言することはできません。これを関数属性に追加したり、エコーする前に適切に設定する方法を追加したりするなど、別の方法でこれを記述することを検討する必要があります。

于 2013-11-01T19:42:46.177 に答える