I have a question about the way PHP handles "included" and "required" files.
My company has developed a suite of standard objects that we use in all of our PHP 4 projects. We keep these objects in a central location on our server, with one class per file. We then instantiate these objects at the top of each script. So far, this system has worked exceptionally well for us. However, some of the class files have grown to over 100K, and although we haven't seen any performance loss yet, we're concerned that we may be pushing the limits.
What I'd like to know is how exactly PHP 4 handles the process of including and/or requiring files. Are frequently-requested classes stored in memory, or is this only possible with the Zend Cache? From the documentation, I've gathered that the Zend Engine performs a disk read for each script request, then it parses the file, compiles it, and executes the compiled instructions. If this is the way things work in PHP 4, one would expect to see decreased performance as the size of standard included/required files increases.
Does anyone have experience with this?
Thanks.
Nick Taylor