PHP - Funzione xdiff string_patch ()

La funzione xdiff_string_patch () applica una patch a una stringa con un diff unificato.

Sintassi

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

La funzione xdiff_string_patch () può applicare una patch a una stringa con una patch unificata nel parametro patch e restituire il risultato. La patch deve essere un diff unificato creato da xdiff_file_diff () / xdiff_string_diff (). Un parametro "flag" opzionale può specificare la modalità di funzionamento. Qualsiasi parte rifiutata di una patch può essere memorizzata all'interno di una variabile di errore, se fornita.

La funzione xdiff_string_patch () può restituire una stringa corretta o false in caso di errore.

Esempio

<?php
   $old_article = file_get_contents("./old_article.txt");
   $diff = $_SERVER["patch"];

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