<?php
 // === Classe Personnel ===
 class Personnel
 { // -- Les propriétés --
   public $nom   ;
   public $prenom;
   // -- Constructeur --
   function __construct($n,$p) {
    $this->nom=$n;$this->prenom=$p;
   }
   function ParcoursInterne() {
    foreach($this as $propriete=>$valeur) {echo "$valeur ";}
    echo PHP_EOL;
   }
 }
 // === Programme ===
 $var1 = "CONTENU1"     ;
 $var2 = $var1          ;
 echo '=== transmission par valeur ==='.PHP_EOL;
 echo '---après copie $var2=$var1'.PHP_EOL     ;
 echo '$var1='.$var1.' - $var2='.$var2.PHP_EOL ;
 $var2 = "AUTRE CONTENU";
 echo '---après modification de $var2'.PHP_EOL ;
 echo '$var1='.$var1.' - $var2='.$var2.PHP_EOL ;
 echo '=== transmission par référence ==='.PHP_EOL;
 $UnePers1 = new Personnel("DUPONT","JEAN");
 $UnePers2 = $UnePers1          ;
 echo '-- Parcours $UnePers1 : ';
 $UnePers1->ParcoursInterne()   ;
 echo '-- Parcours $UnePers2 : ';
 $UnePers2->ParcoursInterne()   ;
 echo '---après modification de $UnePers2'.PHP_EOL;
 $UnePers2->nom="MARTIN"        ;
 $UnePers2->prenom="PIERRE"     ;
 echo '-- Parcours $UnePers1 : ';
 $UnePers1->ParcoursInterne()   ;
 echo '-- Parcours $UnePers2 : ';
 $UnePers2->ParcoursInterne()   ;
?>
