如何在PHP中提供动态HTML?

时间:2012-05-10 12:06:25

标签: php image html dynamic-content

我有一个我创建的HTML文件,并存储在别处的目录中。

问题是,我希望能够从外部获取内容并将其放在HTML文件中。

我认为我可以使用PHP,因为它是服务器端,可以访问我想要的文件。

因此,我创建了一个PHP脚本,它打开并回显一个HTML文件,之后,回显一些JavaScript来更改屏幕上的元素。

这是我的PHP文件:

<?php

$html = file_get_contents('file.html');

$imageurl = file_get_contents('url.txt');

$js = '<script type=\'text/javascript\'>updateImage(\'img1\', '.$imageurl.');</script>';

echo $html;

echo $js;

?>

..和HTML文件:

<html>
<script type="text/javascript">
function updateImage(id, url) {
    var img = document.getElementsByName(id)[0];
    img.src = url;
}
</script>

<body>

<img src="" name="img1" />

</body>

</html>

这不是最好的方法,但它有效。

我想知道在PHP中使用JavaScript的方法。

我不确定这是最好的方法。

2 个答案:

答案 0 :(得分:0)

您可以使用includeob_get_contents将html作为字符串,并在其上执行str_replacepreg_replace

您的HTML:

<html>
    <body>
        <img src="{IMAGE_SRC}" width="512" height="512" name="image" />
    </body>
</html>

你的PHP:

ob_start();
include 'your_file.html';
$buffer = ob_get_contents();
ob_end_clean();
$buffer = str_replace('{IMAGE_SRC}', 'your_image.png', $buffer);

print $buffer;

答案 1 :(得分:0)

这是一个非常基本的问题。您应该阅读一些PHP和HTML教程。这样的事情可以解决问题:

<html>

<body>
<img src="" width="512" height="512" name="<?= $somePhpVariableContainingTheName ?>" />
</body>

</html>