PHP: Comparando valores e identificando o que foi alterado

Olá pessoal.

Neste post aprenda a comparar valores e identificar o que foi modificado.

Ideia de uso: utilizei algo similar num sistema que estava desenvolvendo, onde o cliente solicitou a gravação, em uma tabela de “log”, de todos os dados que foram alterados. Toda que vez que se alterava um campo de um formulário, era gravado numa tabela “log”, o valor antes e depois de alterado.

Vamos ao código:

<?
// array contendo valores antigos
$arr_old = array(1, 2, 'teste', 'abc');
// array contendo valores novos
$arr_new = array(1, 3, 'teste2', 'abc2');
 
// verifica o que está diferente
$arr_dif = array_diff_assoc($arr_old, $arr_new);
 
foreach($arr_dif as $key => $value){
  echo "antigo: ".$arr_old[$key]."<br />";
  echo "novo: ".$arr_new[$key]."<br />";
  echo "<hr>";
}
?>

Resultado:

antigo: 2
novo: 3
——————————————
antigo: teste
novo: teste2
——————————————
antigo: abc
novo: abc2

Até a próxima!

Um comentário em “PHP: Comparando valores e identificando o que foi alterado

  • 28 de março de 2013 em 14:41
    Permalink

    Olá Tiago,
    parabéns pelo belo post, foi de grande valia para todos por aqui.
    Abraços

    Resposta

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *