略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: xdiff_file_patch

2024-12-22

xdiff_file_patch

(PECL xdiff >= 0.2.0)

xdiff_file_patchPatch a file with an unified diff

说明

xdiff_file_patch(
    string $file,
    string $patch,
    string $dest,
    int $flags = DIFF_PATCH_NORMAL
): mixed

Patches a file with a patch and stores the result in a file. patch has to be an unified diff created by xdiff_file_diff()/xdiff_string_diff() function. An optional flags parameter specifies mode of operation.

参数

file

The original file.

patch

The unified patch file. It has to be created using xdiff_string_diff(), xdiff_file_diff() functions or compatible tools.

dest

Path of the resulting file.

flags

Can be either XDIFF_PATCH_NORMAL (default mode, normal patch) or XDIFF_PATCH_REVERSE (reversed patch).

Starting from version 1.5.0, you can also use binary OR to enable XDIFF_PATCH_IGNORESPACE flag.

返回值

Returns false if an internal error happened, string with rejected chunks if patch couldn't be applied or true if patch has been successfully applied.

范例

示例 #1 xdiff_file_patch() example

The following code applies unified diff to a file.

<?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 Patch reversing example

The following code reverses a patch.

<?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;
}

?>

参见

add a noteadd a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/function.xdiff-file-patch.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3