En este tutorial, clonaremos un objeto PHP para crear una copia del objeto.
Uso del operador de asignación para copiar un objeto
El valor de la variable de objeto se puede copiar a otra variable en PHP utilizando la clonación del objeto. En PHP, se puede crear una copia superficial del objeto utilizando la palabra clave clon, y se puede crear una copia profunda del objeto utilizando el método __clon(). En el siguiente ejemplo, usamos el clon de palabras clave y el método __clon() Cuando una variable de objeto se asigna a otra variable.
Use el código a continuación para crear un archivo PHP llamado sin clon.php, y almacene el archivo en la ubicación del servidor web. Aquí, se declara una clase llamada curso; El curso contiene una variable, $ curso_id, y una función, Detalles(). La función imprimirá los detalles del curso en función de la identificación del curso. A continuación, un objeto llamado $ objcourse se declara acceder a los miembros de la clase.
Una vez que el valor de $ curso_id se asigna usando este objeto y la variable de objeto se asigna a $ objcrs, Ambas variables utilizarán la misma ubicación en la memoria para la referencia. Por lo tanto, si se cambia el valor de un objeto, entonces el otro objeto se modificará automáticamente si se copian.
// Defina una claseObtendrá la siguiente salida después de ejecutar el script desde el servidor web. Aquí, si se cambia el valor de $ objcrs, entonces el valor de $ objcourse se cambia al mismo valor.
Uso de la palabra clave clon para copiar un objeto
El clon La palabra clave se puede usar para resolver el problema anterior. Use el siguiente código para crear un archivo llamado clon.php. La misma clase se usa aquí. El objeto de la clase se cloniza a otro objeto usando el clon Palabra clave para crear una copia del objeto. Si el valor de una variable cambia, no cambiará el valor de la otra variable.
// Defina una claseObtendrá la siguiente salida después de ejecutar el script desde el servidor web. Aquí, cuando se cambia el valor de $ objcrs, el valor de $ objcourse permanecerá sin cambios.
Usando el método __clone () para copiar un objeto
El __clon() El método también se puede utilizar para resolver el problema anterior. Usando el código bwlow, cree un archivo llamado con clonemethod.php. La misma clase se usa aquí. El __clon() El método se utiliza en el script con la palabra clave clon. Este método se llama automáticamente cuando un objeto se clona a otro objeto. Según el script, se asigna un nuevo valor para el objeto clonado dentro del __clon() método.
// Defina una claseObtendrá la siguiente salida después de ejecutar el script desde el servidor web. Aquí, cuando $ objcrs está clonado, su valor es cambiado por el __clon() método, pero el valor de $ objcourse permanece sin cambios. El valor de $ objcourse se imprime antes y después de la clonación. El valor de $ objcrs se imprime más tarde.
Conclusión
La clonación es una característica útil de PHP que se puede usar para crear una copia de un objeto. Ambos clon palabra clave y el __clon() El método se muestra en este tutorial a través de ejemplos simples. Esperamos que este tutorial te ayude a comprender la clonación de objetos.