Vidéo: Comment copier du texte dans le presse-papier en JavaScript 2025
PHP fournit une méthode que vous pouvez utiliser pour copier un objet. La méthode est __clone, avec deux underscores. Vous pouvez écrire votre propre méthode __clone dans une classe si vous souhaitez spécifier des instructions à exécuter lorsque l'objet est copié. Si vous n'écrivez pas le vôtre, PHP utilise sa méthode __clone par défaut qui copie toutes les propriétés telles quelles.
Comme le montrent les deux caractères de soulignement commençant son nom, la méthode clone est un type de méthode différent et est donc appelée différemment, comme le montre l'exemple suivant.
Vous pourriez écrire la classe suivante:
class Car {private $ gas = 0; private $ color = "rouge"; function addGas ($ montant) {$ this-> gaz = $ this-> gaz + $ montant; echo "$ amount gallons ajoutés au réservoir d'essence";} function __clone () {$ this-> gas = 5;}}
En utilisant cette classe, vous pouvez créer un objet et le copier, comme suit:
$ firstCar = nouvelle voiture; $ firstCar-> addGas (10); $ secondCar = clone $ firstCar;
Après ces déclarations, vous avez deux voitures:
-
$ firstCar : Cette voiture est rouge et contient dix gallons de gaz. Les dix gallons ont été ajoutés avec la méthode addGas.
-
$ secondCar : Cette voiture est rouge, mais contient cinq gallons de gaz. La voiture dupliquée est créée en utilisant la méthode __clone dans la classe Car. Cette méthode met le gaz à 5 et ne définit pas de couleur du tout.
Si vous n'aviez pas de méthode __clone dans la classe Car, PHP utiliserait une méthode __clone par défaut qui copierait toutes les propriétés, faisant de $ secondCar à la fois rouge et contenant dix gallons de gaz.
