xdiff_file_patch 함수
(PECL xdiff >= 0.2.0)
xdiff_file_patch — 통합 diff로 파일 패치
설명
xdiff_file_patch( string $file, string $patch, string $dest, int $flags = DIFF_PATCH_NORMAL ): mixed
file
을 patch
로 패치하고 결과를 파일에 저장합니다. patch
는 xdiff_file_diff()/xdiff_string_diff() 함수에 의해 생성된 통합 diff여야 합니다. 선택적 flags
매개변수는 작동 모드를 지정합니다.
매개변수
file
- 원본 파일입니다.
patch
- 통합 패치 파일. xdiff_string_diff(), xdiff_file_diff() 함수 또는 호환 가능한 도구를 사용하여 생성해야 합니다.
dest
- 결과 파일의 경로입니다.
flags
- XDIFF_PATCH_NORMAL(기본 모드, 일반 패치) 또는 XDIFF_PATCH_REVERSE(역 패치)일 수 있습니다.
버전 1.5.0부터 바이너리 OR을 사용하여 XDIFF_PATCH_IGNORESPACE 플래그를 활성화할 수도 있습니다.
반환 값
내부 오류가 발생하면 false
를 반환하고 패치를 적용할 수 없으면 거부된 청크가 있는 문자열을, 패치가 성공적으로 적용된 경우 true
를 반환합니다.
Examples
예제 #1 xdiff_file_patch() 예제
다음 코드는 파일에 통합 diff를 적용합니다.
<?php
$old_version = 'my_script-1.0.php';
$patch = 'my_script.patch';
$errors = xdiff_file_patch($old_version, $patch, 'my_script-1.1.php');
if (is_string($errors)) {
echo "Rejects:\n";
echo $errors;
}
?>
예제 #2 패치 반전 예
다음 코드는 패치를 뒤집습니다.
<?php
$new_version = 'my_script-1.1.php';
$patch = 'my_script.patch';
$errors = xdiff_file_patch($new_version, $patch, 'my_script-1.0.php', XDIFF_PATCH_REVERSE);
if (is_string($errors)) {
echo "Rejects:\n";
echo $errors;
}
?>
기타
- xdiff_file_diff() - 두 파일의 통합 diff 만들기