[GIT-PULLS] [php-src] PR #23329: session: fix create_sid()/validateId() check depending on interface order

[email protected] (lazerg)
Newsgroups php.git-pulls
Message-ID <[email protected]>
Pull Request: https://github.com/php/php-src/pull/23329
Author: lazerg

`session_handler_interface_gets_implemented()` runs while `SessionHandlerInterface` is being attached to the class, so `class->function_table` only holds what the class itself declares. Interfaces listed after it have not contributed their abstract methods yet, which is why the warning fires or not depending on the order of the `implements` list.

The check now also looks at the interface list, which `zend_do_implement_interfaces()` fills in before it starts calling the handlers. That covers sibling interfaces extending `SessionIdInterface` or `SessionUpdateTimestampHandlerInterface` too.

Closes #23328
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.