php-src/Zend/tests/serializable_deprecation.phpt
Nikita Popov 3e6b447979 Partially deprecate Serializable
If Serializable is implemented, require that __serialize() and
__unserialize() are implemented as well, else issue a deprecation
warning.

Also deprecate use of PDO::FETCH_SERIALIZE.

RFC: https://wiki.php.net/rfc/phase_out_serializable

Closes GH-6494.
2021-04-28 16:55:14 +02:00

24 lines
682 B
PHP

--TEST--
Serializable deprecation
--FILE--
<?php
interface I extends Serializable {}
abstract class A implements Serializable {}
class C extends A implements I {
public function serialize(): string {}
public function unserialize(string $data) {}
}
class D extends A implements I {
public function serialize(): string {}
public function unserialize(string $data) {}
public function __serialize(): array {}
public function __unserialize(array $data) {}
}
?>
--EXPECTF--
Deprecated: The Serializable interface is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d