Forum und email

xdiff_string_patch

(PECL xdiff:0.2-1.4)

xdiff_string_patch — Patch a string with an unified diff

Description

string xdiff_string_patch ( string $str , string $patch [, int $flags [, string &$error ]] )

Patches a string with a unified patch string.

Parameters

str

The original string.

patch

The unified patch string.

flags

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

error

If provided then rejected parts are stored inside this variable.

Return Values

Returns the patched string, or FALSE on error.

Exempel

Example#1 xdiff_string_patch() example

The following code applies changes to some article.

<?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$diffXDIFF_PATCH_NORMAL$errors);
if (
is_string($new_article)) {
    echo 
"New article:\n";
    echo 
$new_article;
}

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

?>

Se också