php替换文字段落中指定的模版变量(str_replace的用法)

发布时间:2024年01月07日

项目需求

替换文本中固定格式{1}、{2}、{3}…为输入表单。

举例说明:要将文本中的固定格式 {营销利率}、{主办经理}和{营销柜号}替换为输入表单的HTML,

$text = "就是签订合同的各方,大部分的合同主体是两方,一般写成甲方、乙方。根据合同的性质,有的合同也有别的写法,{营销利率}比如租赁合同写成出租方和租赁方,{营销柜号}承包合同写成发包人和承包人。合同主体,是个人的,一定要写身份证上的名字,是单位的,要写准确的全称,一个字也不要差,有营业执照的要写营业执照上的名称。最好是把身份证号、组织机构代码、住址、联系方式也写上{主办经理}。 ";

封装函数

/*
 * $text,文本内容
 * $labelText,标签文本
 * */
function getContactContent($text, $labelText)
{
    $replaceField = array();
    $replacement = array();
    foreach ($labelText as $k => $v) {
        $replacement[] = "<input type='text' class='lock-input' name='lockField' id='" . $k . "' />";
        $replaceField[] = '{' . $v . '}';
    }
    return str_replace($replaceField, $replacement, $text);
}

效果测试

$text = "就是签订合同的各方,大部分的合同主体是两方,一般写成甲方、乙方。根据合同的性质,有的合同也有别的写法,{营销利率}比如租赁合同写成出租方和租赁方,{营销柜号}承包合同写成发包人和承包人。合同主体,是个人的,一定要写身份证上的名字,是单位的,要写准确的全称,一个字也不要差,有营业执照的要写营业执照上的名称。最好是把身份证号、组织机构代码、住址、联系方式也写上{主办经理}。 ";
$labelText = array('营销利率', '营销柜号', '主办经理');
$analysisText = array('2%', '400万', '2024年3月23日');

echo getContactContent($text, $labelText);
echo "<hr>";
echo getContactAnalysis($text, $labelText, $analysisText);
echo "<hr>";
echo $analysisText[0];

编辑回显

/*
 * $text,文本内容
 * $labelText,标签文本
 * $analysisText,实际填写文本
 * */

function getContactAnalysis($text, $labelText, $analysisText)
{
    $replaceField = array();
    $replacement = array();
    foreach ($labelText as $k => $v) {
        $replacement[] = "<input class='lock-input-span' id='filed" . $k . "' value='$analysisText[$k]' οnclick='getFocus($k)'>";
        $replaceField[] = "{" . $v . "}";
    }
    return str_replace($replaceField, $replacement, $text);
}

str_replace的用法

在PHP中,str_replace() 函数用于替换字符串中的某些内容。它的语法如下:

str_replace(search, replace, subject)

参数说明:

  • search:要查找的字符串或字符串数组。
  • replace:要替换的字符串或字符串数组。
  • subject:要替换的目标字符串或字符串数组。

下面是使用 str_replace() 函数的示例:

$text = "Hello, World!";
$newText = str_replace("World", "PHP", $text);
echo $newText;  // 输出:Hello, PHP!

在上面的示例中,str_replace() 函数将 $text 字符串中的 “World” 替换为 “PHP”。

你还可以使用数组作为参数来执行批量替换。例如:

$text = "Hello, World!";
$search = array("World", "PHP");
$replace = array("Universe", "Laravel");
$newText = str_replace($search, $replace, $text);
echo $newText;  // 输出:Hello, Universe!

在上面的示例中,str_replace() 函数将 $text 字符串中的 “World” 替换为 “Universe”,将 “PHP” 替换为 “Laravel”。


@漏刻有时

文章来源:https://blog.csdn.net/weixin_41290949/article/details/135443429
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。