xdiff_string_patch 함수

(PECL xdiff >= 0.2.0)

xdiff_string_patch — 통합 diff로 문자열 패치


설명

xdiff_string_patch(
    string $str,
    string $patch,
    int $flags = ?,
    string &$error = ?
): string
                

patch 매개변수의 통합 패치로 str 문자열을 패치하고 결과를 반환합니다. 패치는 xdiff_file_diff()/xdiff_string_diff() 함수에 의해 생성된 통합 diff여야 합니다. 선택적 flags 매개변수는 작동 모드를 지정합니다. 패치의 거부된 부분은 제공되는 경우 error 변수 안에 저장됩니다.


매개변수

str
원래 이진 문자열입니다.
patch
통합 패치 문자열입니다. xdiff_string_diff(), xdiff_file_diff() 함수 또는 호환 가능한 도구를 사용하여 생성해야 합니다.
flags
flagsXDIFF_PATCH_NORMAL(기본 모드, 일반 패치) 또는 XDIFF_PATCH_REVERSE(역 패치)일 수 있습니다.

버전 1.5.0부터 바이너리 OR을 사용하여 XDIFF_PATCH_IGNORESPACE 플래그를 활성화할 수도 있습니다.

error
제공된 경우 거부된 부품이 이 변수 ​​안에 저장됩니다.

반환 값

패치된 문자열을 반환하거나 오류가 발생하면 false를 반환합니다.


Examples

예제 #1 xdiff_string_patch() 예제

다음 코드는 일부 기사에 변경 사항을 적용합니다.

                  
<?php
$old_article = file_get_contents('./old_article.txt');
$diff = $_SERVER['patch']; /* Let's say that someone pasted a patch to html form */

$errors = '';

$new_article = xdiff_string_patch($old_article, $diff, XDIFF_PATCH_NORMAL, $errors);
if (is_string($new_article)) {
    echo "New article:\n";
    echo $new_article;
}

if (strlen($errors)) {
    echo "Rejects: \n";
    echo $errors;
}

?>
                  
                

기타