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"로 바꿉니다.


@missing때때로

추천

출처blog.csdn.net/weixin_41290949/article/details/135443429