Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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查找&;替换-新手_Php_Replace - Fatal编程技术网

PHP查找&;替换-新手

PHP查找&;替换-新手,php,replace,Php,Replace,所以我有一些文本,我需要用其他文本加上原始文本本身来替换 这是一个Wordpress钩子,下面是我正在使用的函数: function ad_content($content) { if (is_single() || is_page()) { $content = preg_replace('(A)','B',$content,1); } return $content; } add_filter ('the_content','ad_content');

所以我有一些文本,我需要用其他文本加上原始文本本身来替换

这是一个Wordpress钩子,下面是我正在使用的函数:

function ad_content($content) {
    if (is_single() || is_page()) {
        $content = preg_replace('(A)','B',$content,1);
    }
    return $content;
}
add_filter ('the_content','ad_content');  
问题是,这将简单地用B替换A,我需要的是用A+B替换A,所以我想我首先要找到A,把它变成一个变量或数组,然后再找到它,这次用变量+另一个包含文本B的变量替换它


这听起来正确吗?

使用
str\u replace
函数:)在此处阅读:


您可以在replace参数中使用匹配的内容,模式中的每个组都有$1、$2等

$content=preg_replace(“(A)”、“$1b”、$content,1)


请参阅的文档,您可以使用str\u replace

$str = "old";
$final = str_replace($str,"new".$str,$str);
echo $final;

上面的代码将输出oldnew

这称为字符串构建,因此您可以搜索该代码以获得更多帮助,但首先您可以尝试

$content .= " additional content";
echo $content;

查看所产生的影响。

请不要使用仅链接的答案,尤其是对该网站的链接。好的答案应该解释问题,并说明如何在不将用户发送到其他站点的情况下解决问题。只有一个链接的函数实际上只是通过谷歌搜索来展示你的能力。另外,当引用函数时,最好从它的文档源引用它,例如str_替换php.net站点OK。但我想保留原始文本,只是添加到它。所以我搜索A并用A+B替换。他不应该因为链接答案而被否决。您不能只是将代码提供给新的PHP用户并接受他们从中学习,您需要链接到文档。w3schools是一个不错的网站。我喜欢它,因为它提供了参考和大量的例子。听起来不错,我来测试一下。我可以把变量放进去吗,因为我的B字符串非常大。。。这项工作也是如此:$content=preg_replace(‘(A)‘,\$1$variableforB’,$content,1)@kat我相信正确的语法应该是
$content=preg_replace(“(A)”,$1.”$variableforB,$content,1)
$content=preg\u replace('(A)“\$1$variableforB”,$content,1)但您必须进行测试