English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
preg_replace_callback_array 함수는 정규 표현식을 검색하고回调을 사용하여 대체합니다.
이 함수는 PHP7+ 버전 지원
mixed preg_replace_callback_array ( array $patterns_and_callbacks , mixed $subject [, int $limit =) -1 [, int &$count ]] )
함수와 유사합니다 preg_replace_callback(), 하지만 각 패턴 매치에 대해回调 함수를 기반으로 대체합니다.
파라미터 설명:
$patterns_and_callbacks: 키(패턴) => 값(回调 함수)의 연관 배열
$subject: 찾고 대체할 문자열 또는 배열
$limit: 선택적, 각 패턴의 최대 대체 횟수, 기본值为 -1제한 없음, 모든 일치를 완료합니다.
$count: 선택적, 대체 횟수를 지정합니다.
subject가 배열이면 배열을 반환합니다. 아니면 문자열을 반환합니다. 오류가 발생하면 NULL을 반환합니다.
일치가 발견되면 대체된 목표 문자열(또는 문자열 배열)을 반환합니다. 다른 경우 subject는 변경되지 않고 반환됩니다.
<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
[
'~[a]+~i' => function ($match) {
echo strlen($match[0]), ' matches for "a" found', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' matches for "b" found', PHP_EOL;
}
],
$subject
);
?>
결과는 다음과 같습니다:
6 "a"에 대한 일치 내용이 발견되었습니다 3 "b"에 대한 일치 내용이 발견되었습니다