Php 如何仅替换作为blockquote元素子元素的段落?

Php 如何仅替换作为blockquote元素子元素的段落?,php,elements,paragraph,Php,Elements,Paragraph,使用PHP,如何仅替换作为blockquote元素子元素的段落?我需要在运行其他一些函数时暂时转换这些段落元素,然后在这些函数完成运行后将它们更改回“p”“/p”元素。(即,将“p”“/p”更改为“ptemp”“/ptemp”或类似的内容。) 以下是我的代码示例: <blockquote> <div> <p class="replace-this-element">Some Text</p> </div> </bl

使用PHP,如何仅替换作为blockquote元素子元素的段落?我需要在运行其他一些函数时暂时转换这些段落元素,然后在这些函数完成运行后将它们更改回“p”“/p”元素。(即,将“p”“/p”更改为“ptemp”“/ptemp”或类似的内容。)

以下是我的代码示例:

<blockquote>
  <div>
    <p class="replace-this-element">Some Text</p>
  </div>
</blockquote>

<p class="do-not-replace-this-element">Some Text</p>

<p class="do-not-replace-this-element">Some Text</p>

<blockquote>
  <div>
    <p class="replace-this-element">Some Text</p>
  </div>
</blockquote>

<p class="do-not-replace-this-element">Some Text</p>

<p class="do-not-replace-this-element">Some Text</p>

<blockquote>
  <div>
    <p class="replace-this-element">Some Text</p>
  </div>
</blockquote>

一些文本

某些文本

某些文本

一些文本

某些文本

某些文本

一些文本

编辑:谢谢你的问题,这里有更多的信息。我正在使用PHP更改drupal节点的内容字段的呈现标记,以便在服务器端进行。我在第四段之后插入代码,在客户端浏览器中构建DOM之前需要插入代码,因此不能使用js或jQuery。我需要忽略嵌套在块引号中的段落,这样代码就不会嵌入到块引号中

我的想法是更改块引号中的p元素,以便在第4段之后插入新代码时忽略这些元素。然后在插入代码后将它们更改回p元素。但是,也许有更好的方法可以忽略嵌套的p元素

以下是通过drupal template.php文件调用和更改标记的代码:

<?php
function mytheme_preprocess_node(&$variables) {
  $codeToInsert = '<div>A bunch of stuff to add after the 4th paragraph.</div>';
  $contentToAlter = $variables['content']['body'][0]['#markup'];
  $contentToAlter = explode("<p>", $contentToAlter);
  $contentToAlter[3] .= $codeToInsert ;
  $contentToAlter = implode($contentToAlter, "<p>");
  $variables['content']['body'][0]['#markup'] = $contentToAlter;
}

你的问题很模糊,所以我很难对你到底想要什么下结论,但这是可行的

使用JQuery,它更改
替换此元素
,并将其转换为
h1
(我这样做是因为您指定要将这些元素更改为ptemp,但ptemp不是html可以识别的元素),然后它将其交换回来。如果运行该代码段,您将无法看到任何情况发生,因为
othermethod()
中没有任何内容

替换_元素();
其他方法();
替换_元素_back();
函数替换_元素(){
$(“blockquote div”).html('Some Text');
}
函数其他_方法(){
}
函数替换元素返回(){
$(“blockquote div”).html(“

一些文本”

”; }

一些文本

某些文本

一些文本


如果我理解正确,您希望php在运行时替换您的元素。PHP是服务器端,我建议使用JQuery/Javascript。您是想将此HTML代码赋予PHP代码并对其进行修改,还是想在浏览器中对其进行修改?