Clonage d’objets

PHP Ajouter un commentaire

En PHP 5, les valeurs sont désormais passées par référence. Pour cloner un objet, il faut désormais utiliser la fonction clone(), introduite dans la nouvelle version :

$obj_clone = clone($obj);

Pour assurer la compatibilité avec PHP 4, voici une petite astuce qui recrée la fonction :

if (version_compare(phpversion(), '5.0') < 0) {
  eval('   function clone($object) {
               return $object;   
          }  '); 
}

Il suffira ensuite de l’utiliser dans tous les cas… et hop, une compatibilité ascendante, une ;-)

Une Réponse to “Clonage d’objets”

  1. Frederic Poeydomenge Says:

    Pour assurer la compatibilité, on peut aussi utiliser la classe PHP_Compat de PEAR :

    require_once ‘PHP/Compat/Function/clone.php’;

    dont le code source est un poil plus développé :

    http://cvs.php.net/viewvc.cgi/pear/PHP_Compat/Compat/Function/clone.php?revision=1.5&view=markup

Leave a Reply

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in