> We may get away with deprecating and removing PDO silent/warning mode because > it's an extension that was introduced in PHP 5 and everyone was on board with > using exception mode. We probably cannot remove silent mode for other > extensions that either mimic older extensions that didn't use exceptions > (e.g. mysqli) or have been introduced before PHP 5. The reason is that people > designed their code using silent mode and removing it now would cause some > serious headaches.
> Another point to consider is that PDO had silent mode as default for a long > time. You may be surprised, but many people weren't aware that it can throw > exceptions. My guess is that's a very small proportion of all projects though. > With PHP 8.0, they just slapped one line of code and called it a day. Having > said that, I think removing PDO's silent mode is possible soon, even in PHP > 9.0, but we may anger some people. > All warning modes can be deprecated in PHP 8.4 and removed in PHP 9.0. > Silent mode of other extensions should be carefully reviewed one by one. > Deprecation in PHP 9.0 and removal in PHP 10.0 might be a better option. I see. Certainly, it seems necessary to consider the silent mode of other extensions enough. Agree. This was originally a proposal to solve the situation where PDO's error mode behavior was not well maintained. There are problems such as warnings being displayed even in silent mode, and correct information not being obtained using PDO::errorInfo. It seems like a good option would be to keep all silent modes and deprecate warning mode in 8.4 and remove it in 9.x. And it seems good to fix PDO's silent mode bug in 8.4. What do you think? Regards. Saki -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: https://www.php.net/unsub.php