I'm trying to clone a stdClass object that have an attribut which is a DateTime. But it fails. It looks like the clone is not working. Should I wrote my own __clone() method? What is wrong here?
The code:
$object = new stdClass;
$object->date = new DateTime();
var_dump($object->date);
$cloned = clone($object);
$object->date->modify('+1 day');
var_dump($cloned->date);
The output:
object DateTime (
->date = string (19) '2013-04-11 11:54:00'
->timezone_type = int 3
->timezone = string (13) 'Europe/Berlin'
object DateTime (
->date = string (19) '2013-04-12 11:54:00'
->timezone_type = int 3
->timezone = string (13) 'Europe/Berlin'
How to "clone" a php POSCO (Plain Old StdClass Object) via cast chaining:
$cloneObj = (object) (array) $myPOSCO;
var_dump($cloneObj == $myPOSCO); // true
var_dump($cloneObj === $myPOSCO); // false
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With