![]() * Constants were not right after all, and the iterator structure is slightly different for 7.3. * Always dereference our value, if it is not a reference we get the original back again fix compilation error for php7.3 regarding the way constants are implemented in zend. ![]() * Fix where info->type was not correctly assigned, resulting in garbage being dereferenced (php7.2). * fixed the _invoke() and _call() methods: the return value of the C++ function was not passed to php space * fixed some valgrind complaints about uninitialized memory * fixed issue when dealing with optional object parameters * closures now get an empty string as name because exception handling functions sometimes need access to the name * when calling an invalid function we no longer throw an exception, but an error * fixed exception handling for class methods and functions (uncaught Error objects caused a full crash, now they cause a fatal error) * A couple of functions that used to report fatal errors, now throw an Php::Error object instead * Removed support for Exception::file() and Exception::line() * Php::Exception is now only used for exceptions and no longer for errors (so extensions can be written to only catch exceptions, and not the errors) * Added new class Php::Error that can be used for throwing errors (PHP7 normally throws errors instead of reporting fatal errors, which is what PHP5 did) * Enumeration Php::Error has been renamed to Php::ErrorType to make room for the new Php::Error class # Warning: commit dfe4a94 breaks build on PHP7.0 and PHP7.1. ![]() # WARNING: Breaking changes to the ABI and API regarding the Error class Some small improvements and fixes to the building procedures with cmake Performance optimization for destructing objects C++ classes that derive from Php::Serializable now automatically also implement "Serializable" in PHP space ("instanceof" operator now works) C++ classes that derive from Php::Traversable now automatically also implement "Traversable" in PHP space ("instanceof" operator now works) Fixed issue for PHP 7.4 with interfaces that extend from other interfaces Fixed version number (the 2.3.1 release was still creating a 2.3.0 shared object file) Fixed PHP 7.4 issue (because of new values for C constants, interfaces were suddenly registered as abstract classes) Fixed a segmentation fault on extension startup Classes that extend from Php::Serializable no longer have to explicitly register the serialize() and unserialize() methods (they are not implicitly added) In the future to upgrade to a newer (and improved) version. When downloading one of the below releases make sure to come back If you need or prefer a stable version you can download one of the available To get the most recent version, you can fork the PHP-CPP library on GitHub.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |