Zend engine update
| From: | Zeev Suraski | Date: | Wed, 09 Aug 2000 19:25:52 +0000 |
| Subject: | Zend engine update | ||
| Groups: | php.dev php.qa | ||
| Request: | Send a blank email to php-qa+get-549@lists.php.net to get a copy of this message | ||
Be advised :)
Zeev
---
The patch we promised - redesigned the compilation/execution API:
Advantages:
- Smaller memory footprint for the op arrays
- Slightly faster compilation times (due to saved erealloc() calls and faster zend_op
initialization)
- include_once() & require_once() share the same file list
- Consistency between include() and require() - this mostly means that return()
works inside require()'d files just as it does in include() files (it used to
be meaningless in require()'d files, most of the time (see below))
- Made require() consistent with itself. Before, if the argument was not a constant
string, require() took the include() behavior (with return()).
- Removed lots of duplicate code.
Bottom line - require() and include() are very similar now; require() is simply an include()
which isn't allowed to fail. Due to the erealloc() calls for large op arrays, require()
didn't end up being any faster than include() in the Zend engine.
--
Zeev Suraski <zeev@zend.com>
http://www.zend.com/