Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
替换php页面上的文本,例如element.innerhtml_Php - Fatal编程技术网

替换php页面上的文本,例如element.innerhtml

替换php页面上的文本,例如element.innerhtml,php,Php,您好,我一直在搜索一些类似javascript中element.innerHTML的php代码,但我找不到它。我需要它的一些代码,例如从1-60在60秒 但是如果我用echo做的话,它会把所有的东西都放在一起,这是不应该发生的。我需要一些能代替文本的东西。我也不想每秒重新加载我的页面,我没有能力写入文件(我可以读取它们)。请不要告诉我我应该用javascript来做。 有人能告诉我怎么做吗?要替换一些文本,请尝试str\u replace 或者不区分大小写的str_-ireplace您可以使用P

您好,我一直在搜索一些类似javascript中element.innerHTML的php代码,但我找不到它。我需要它的一些代码,例如从1-60在60秒 但是如果我用echo做的话,它会把所有的东西都放在一起,这是不应该发生的。我需要一些能代替文本的东西。我也不想每秒重新加载我的页面,我没有能力写入文件(我可以读取它们)。请不要告诉我我应该用javascript来做。
有人能告诉我怎么做吗?

要替换一些文本,请尝试str\u replace
或者不区分大小写的str_-ireplace

您可以使用PHP吐出执行替换的javascript。不会有一个纯粹的PHP解决方案来解决这个问题,因为PHP是服务器端的,不能访问客户端的页面呈现

假设您需要更改的文本位于名为“replaceMe”的
标记中。您需要使用PHP中的ob_flush()函数在需要显示javascript时强制输出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();

你应该在javascript中这样做,你可以说1)你不想重新加载页面,2)你不想使用javascript。如果这两个都是真的,那么你将无法在不违反其中一个的情况下解决问题。这只是替换变量中不在页面上的字符串OK,那么如果我没弄错,你想更改你无权访问的页面上的内容吗?如果你想发出javascript,使用输出缓冲间歇地发出脚本没有什么大的价值。当在正文中时,这些脚本将在发出时执行。但是它很繁重,会向客户端发出大量不必要的脚本文本字节。你可以用纯javascript轻松地满足他的要求。我理解这一点,如果我有自己的方式,我也会用纯javascript。但我也能理解,在某些情况下,这是不可能的——例如,假设您希望为在PHP中执行的函数提供一个进度条。您将如何使用javascript实现这一点?对于这个特殊的问题,你可以通过CSS和打印出来解决,但是OP说他不想处理多个元素相互叠加的问题,也不想/不可能有一个纯Javascript解决方案。
ob_end_flush();