@ 2017-01-07T19:19:13Z <?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);
class Definition implements Serializable {
private $value;
public function __construct($value) {
$this->value = $value;
}
public function serialize() {
echo serialize([$this->value])."\n";
return serialize($this->value);
}
public function unserialize($data) {
$this->value = unserialize($data);
}
}
$a=new stdClass();
$d=new Definition($a);
var_dump(unserialize(serialize([$d,'This text will appear twice!',$a])));
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 8.3.0 - 8.3.26 , 8.4.1 - 8.4.13 a:1:{i:0;O:8:"stdClass":0:{}}
Warning: unserialize(): Error at offset 4 of 4 bytes in /in/9hVS2 on line 13
Warning: unserialize(): Error at offset 83 of 84 bytes in /in/9hVS2 on line 19
bool(false)
Output for 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.33 , 8.2.0 - 8.2.29 a:1:{i:0;O:8:"stdClass":0:{}}
bool(false)
Output for 5.6.0 - 5.6.40 , 7.0.0 - 7.0.33 , 7.1.0 - 7.1.33 , 7.2.0 - 7.2.33 a:1:{i:0;O:8:"stdClass":0:{}}
array(3) {
[0]=>
object(Definition)#3 (1) {
["value":"Definition":private]=>
bool(false)
}
[1]=>
string(28) "This text will appear twice!"
[2]=>
string(28) "This text will appear twice!"
}
preferences:dark mode live preview ace vim emacs key bindings
125.5 ms | 409 KiB | 5 Q