PHP はテキスト段落で指定されたテンプレート変数を置き換えます (str_replace の使用)

プロジェクトの要件

テキスト内の固定形式 {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」に置き換えます。


時々行方不明です

おすすめ

転載: blog.csdn.net/weixin_41290949/article/details/135443429