3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Personnage { private $_force; private $_experience; private $_degats; public function frapper(Personnage $persoAFrapper) { $persoAFrapper->_degats += $this->_force; } public function gagnerExperience() { $this->_experience++; } // Mutateur chargé de modifier l'attribut $_force. public function setForce($force) { if (!is_int($force)) // S'il ne s'agit pas d'un nombre entier. { trigger_error('La force d\'un personnage doit être un nombre entier', E_USER_WARNING); return; } if ($force > 100) // On vérifie bien qu'on ne souhaite pas assigner une valeur supérieure à 100. { trigger_error('La force d\'un personnage ne peut dépasser 100', E_USER_WARNING); return; } $this->_force = $force; } // Mutateur chargé de modifier l'attribut $_experience. public function setExperience($experience) { if (!is_int($experience)) // S'il ne s'agit pas d'un nombre entier. { trigger_error('L\'expérience d\'un personnage doit être un nombre entier', E_USER_WARNING); return; } if ($experience > 100) // On vérifie bien qu'on ne souhaite pas assigner une valeur supérieure à 100. { trigger_error('L\'expérience d\'un personnage ne peut dépasser 100', E_USER_WARNING); return; } $this->_experience = $experience; } // Ceci est la méthode degats() : elle se charge de renvoyer le contenu de l'attribut $_degats. public function degats() { return $this->_degats; } // Ceci est la méthode force() : elle se charge de renvoyer le contenu de l'attribut $_force. public function force() { return $this->_force; } // Ceci est la méthode experience() : elle se charge de renvoyer le contenu de l'attribut $_experience. public function experience() { return $this->_experience; } } $perso1 = new Personnage(); // Un premier personnage $perso2 = new Personnage(); // Un second personnage $perso1->setForce(20); $perso1->setExperience(2); $perso2->setForce(70); $perso2->setExperience(58); $perso1->frapper($perso2); // $perso1 frappe $perso2 $perso1->gagnerExperience(); // $perso1 gagne de l'expérience $perso2->frapper($perso1); // $perso2 frappe $perso1 $perso2->gagnerExperience(); // $perso2 gagne de l'expérience echo 'Le personnage 1 a ', $perso1->force(), ' de force, contrairement au personnage 2 qui a ', $perso2->force(), ' de force.<br />'; echo 'Le personnage 1 a ', $perso1->experience(), ' d\'expérience, contrairement au personnage 2 qui a ', $perso2->experience(), ' d\'expérience.<br />'; echo 'Le personnage 1 a ', $perso1->degats(), ' de dégâts, contrairement au personnage 2 qui a ', $perso2->degats(), ' de dégâts.<br />';
Output for git.master, git.master_jit, rfc.property-hooks
Le personnage 1 a 20 de force, contrairement au personnage 2 qui a 70 de force.<br />Le personnage 1 a 3 d'expérience, contrairement au personnage 2 qui a 59 d'expérience.<br />Le personnage 1 a 70 de dégâts, contrairement au personnage 2 qui a 20 de dégâts.<br />

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
65.14 ms | 401 KiB | 8 Q