In questo tutorial, cloneremo un oggetto PHP per creare una copia dell'oggetto.
Utilizzando l'operatore di assegnazione per copiare un oggetto
Il valore della variabile oggetto può essere copiato in un'altra variabile in PHP usando la clonazione degli oggetti. In PHP, una copia superficiale dell'oggetto può essere creata utilizzando la parola chiave clone, e una copia profonda dell'oggetto può essere creata utilizzando il metodo __clone(). Nel seguente esempio, utilizziamo il clone delle parole chiave e il metodo __clone() Quando una variabile oggetto viene assegnata a un'altra variabile.
Utilizzare il codice seguente per creare un file PHP chiamato senza clone.PHP, e memorizzare il file nella posizione del server web. Qui, viene dichiarato un corso chiamato Corso; Il corso contiene una variabile, $ Course_id, e una funzione, Dettagli(). La funzione stampa i dettagli del corso in base all'ID del corso. Successivamente, un oggetto chiamato $ objcourse è dichiarato per accedere ai membri della classe.
Una volta il valore di $ Course_id è assegnato usando questo oggetto e la variabile oggetto è assegnata a $ objcrs, Entrambe le variabili utilizzeranno la stessa posizione nella memoria per il riferimento. Pertanto, se il valore di un oggetto viene modificato, l'altro oggetto verrà automaticamente modificato se viene copiato.
// Definisci una classeOtterrai il seguente output dopo aver eseguito lo script dal server web. Qui, se il valore di $ objcrs viene modificato, il valore di $ objcourse viene modificato allo stesso valore.
Utilizzo della parola chiave clone per copiare un oggetto
IL clone La parola chiave può essere utilizzata per risolvere il problema sopra. Utilizzare il seguente codice per creare un file denominato clone.PHP. La stessa classe è usata qui. L'oggetto della classe viene clonato su un altro oggetto usando il clone parola chiave per creare una copia dell'oggetto. Se il valore di una variabile cambia, non modificherà il valore dell'altra variabile.
// Definisci una classeOtterrai il seguente output dopo aver eseguito lo script dal server web. Qui, quando il valore di $ objcrs viene modificato, il valore di $ objcourse rimarrà invariato.
Usando il metodo __clone () per copiare un oggetto
IL __clone() Il metodo può anche essere utilizzato per risolvere il problema sopra. Utilizzando il codice bwlow, crea un file denominato concloneMethod.PHP. La stessa classe è usata qui. IL __clone() Il metodo viene utilizzato nello script con la parola chiave clone. Questo metodo viene chiamato automaticamente quando un oggetto viene clonato su un altro oggetto. Secondo lo script, viene assegnato un nuovo valore per l'oggetto clonato all'interno del __clone() metodo.
// Definisci una classeOtterrai il seguente output dopo aver eseguito lo script dal server web. Qui, quando $ objcrs è clonato, il suo valore è modificato dal __clone() metodo, ma il valore di $ objcourse Rimane invariato. Il valore di $ objcourse è stampato prima e dopo la clonazione. Il valore di $ objcrs è stampato più tardi.
Conclusione
La clonazione è una caratteristica utile di PHP che può essere utilizzata per creare una copia di un oggetto. Entrambi i clone Parole chiave e __clone() il metodo sono mostrati in questo tutorial tramite semplici esempi. Speriamo che questo tutorial ti abbia aiutato a capire la clonazione degli oggetti.