str_replace如何移动html标签


PHP: str_replace how to move html tag

我是新手,我有一些问题与PHP str_replace,我需要建议

$a = '<a class="class1 clss2" href="http://www.somedomain.com/page1.php" target="_blank"><p class="myclass">';

我想这样替换html标签

:

<a class="class1 clss2" href="http://www.somedomain.com/page1.php" target="_blank"><p class="myclass">
:后

<p class="myclass"><a class="class1 clss2" href="http://www.somedomain.com/page1.php" target="_blank">

我尝试编码,我有问题的动态值在class="…"和href="…"

请指教,谢谢:)

下面的代码只适合您在问题中提供的示例:

这是使用preg_replace()而不是str_replace():

$a = '<a class="class1 clss2" href="http://www.somedomain.com/page1.php" target="_blank"><p class="myclass">';
$a = preg_replace("|(<a [^>]*>)(<p [^>]*>)|", "$2$1", $a);
print "$a'n";

在这里使用正则表达式,我捕获两组$1$2中的两个标签。在替换期间,我只是交换它们的位置,如$2$1