Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP 7의 Preg_replace_callback_array()


PHP 7의 Preg_replace_callback_array() 함수는 정규식을 나타내며 콜백 사용을 대체합니다. 이 함수는 정규식 집합과 일치하는 문자열 또는 문자열 배열을 반환하고 콜백 함수를 사용하여 대체합니다.

구문

preg_replace_callback_array(patterns, input, limit, count)

매개변수 값:

  • 패턴 - 정규식 패턴을 콜백 함수에 연결하려면 연결 배열이 필요합니다.
  • 입력/제목 - 교체를 수행하려면 문자열 배열이 필요합니다.
  • 한도 - 선택 사항입니다. -1은 기본값으로 사용되며 이는 무제한을 의미합니다. 각 문자열에서 수행할 수 있는 대체 수에 대한 제한을 설정합니다.
  • 카운트 - 또한 제한과 같이 선택 사항입니다. 이 변수에는 함수가 실행된 후 수행된 대체 횟수를 나타내는 숫자가 포함됩니다.
  • 플래그 - 일치하는 배열의 형식에 영향을 미치는 preg_offset_capture 및 preg_unmatched_as_null 플래그의 조합일 수 있습니다.
  • 반환 값 - preg_replace_callback_array()는 문자열 또는 문자열 배열을 반환합니다. 오류가 발견되면 null 값을 반환합니다. 일치하는 항목이 발견되면 새 주제가 반환되고 그렇지 않으면 주제가 변경되지 않고 반환됩니다.

Preg_replace_callback_array():예

<html>
<head>
<title> PHP 7 Featuretutorialpoint:</title>
</head>
<body>
<?php
   $subject = 'AaaaaaaBbbbCccc';
   preg_replace_callback_array (
      [
         '~[a]+~i' => function ($match) {
            echo strlen($match[0]), ' number of "a" found', PHP_EOL;
         },
         '~[b]+~i' => function ($match) {
            echo strlen($match[0]), ' number of "b" found', PHP_EOL;
         },
         '~[c]+~i' => function ($match) {
            echo strlen($match[0]), ' number of "c" found', PHP_EOL;
         }
      ],
      $subject
   );
?>
</body>
</html>

출력

위 프로그램 코드의 출력은 -

입니다.
7 number of "a" found
4 number of "b" found
5 number of "c" found