替换页面上的文本PHP类似于element.innerhtml


replace text on your page php something like element.innerhtml

你好,我一直在搜索一些类似于 JavaScript 中的 element.innerHTML 的 PHP 代码,但我找不到它。 我需要它用于一些代码,例如在 1 秒内从 60 秒变为 60 秒但是,如果我使用 Echo 这样做,它只会将所有内容放在彼此之下,这不应该发生。我需要一些只是替换文本的东西。我也不想每秒重新加载我的页面,也没有能力写入文件(我可以读取它们)。请不要告诉我我应该用JavaScript来做。那么有人可以告诉我该怎么做吗?

你可以使用 PHP 吐出执行替换的 JavaScript。不会有纯粹的PHP解决方案,因为PHP是服务器端的,无法访问客户端的页面呈现。

假设您需要更改的文本位于名为"replaceMe"的<div>标签中。您需要在 PHP 中使用 ob_flush() 函数在需要显示时强制输出 JavaScript。要初始化的 PHP 是

if (ob_get_level() == 0) ob_start();

然后,每次你需要更新时,你的PHP代码中都有这样的东西,添加到页面的正文中:

echo '<script type="text/javascript" language="javascript">';
echo "document.getElementById('replaceMe').innerHTML = 'Text for this iteration';";
echo '</script>';
flush(); ob_flush();

当然,如果你想让自己更轻松,你可以制作一个PHP函数来打印所有这些,给定一个包含要替换的文本的参数。

那么最后你需要有

ob_end_flush();

要替换一些文本,请尝试str_replace http://de3.php.net/manual/de/function.str-replace.php或不区分大小写str_ireplace