PHP ersetzt die im Textabsatz angegebene Template-Variable (Verwendung von str_replace)

Projektanforderungen

Ersetzen Sie das feste Format {1}, {2}, {3}... im Text durch das Eingabeformular.

Beispiel: Um das feste Format {Marketingrate}, {Hostmanager} und {Marketingzählernummer} im Text durch den HTML-Code des Eingabeformulars zu ersetzen,

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

gekapselte Funktion

/*
 * $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);
}

Wirkungstest

$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];

Echo bearbeiten

/*
 * $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);
}

Verwendung von str_replace

In PHP str_replace()werden Funktionen verwendet, um etwas in einer Zeichenfolge zu ersetzen. Seine Syntax ist wie folgt:

str_replace(search, replace, subject)

Parameterbeschreibung:

  • search: Die zu suchende Zeichenfolge oder das Array von Zeichenfolgen.
  • replace: Die Zeichenfolge oder das Array von Zeichenfolgen, die ersetzt werden sollen.
  • subject: Die zu ersetzende Zielzeichenfolge oder das zu ersetzende Zeichenfolgenarray.

Hier ist str_replace()ein Beispiel für die Verwendung der Funktion:

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

Im obigen Beispiel ersetzt str_replace()die Funktion $text„World“ in der Zeichenfolge durch „PHP“.

Sie können Arrays auch als Argumente verwenden, um Batch-Ersetzungen durchzuführen. Zum Beispiel:

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

Im obigen Beispiel ersetzt str_replace()die Funktion „World“ durch „Universe“ und „PHP“ durch „Laravel“ in der Zeichenfolge.$text


@missingsometimes

Ich denke du magst

Origin blog.csdn.net/weixin_41290949/article/details/135443429
Empfohlen
Rangfolge