In this new post to his site Kevin Schroeder thinks out loud and wonders if an idea of his is "a dumb idea" to be included into the PHP core - engine state caching.

I was consulting and I would see significant server resources consumed by bootstrapping the apps. Loading config files, loading dependent classes, setting up dependencies, initializing ACL's, and the list goes on and on. One of the ways to negate the effect would be to cache a bootstrap object and then pull that object from the cache at the start of the request. However, the problem is that unserialization can actually end up taking more time than the bootstrap process itself.

He wonders if, after the initial bootstrapping happened, a method could be called (his example is "init_engine_state") that would cache the Zend Engine's current state and pass that to a callback function. This would cache everything - objects, variables, classes, etc - all pre-interpreted into memory and make them easy to reuse on future executions. What do you think? Share your thoughts in the comments of the post.

XPertDeveloper.com has a quick new post looking at a function that might be overlooked until it suddenly becomes just what you need - clearstatecache for clearing file state information in the current script.

For the functions like is_file(), file_exists(), etc PHP caches the result of this function for each file for faster performance if function called again. But in some cases you want to clear this cached information, for the task like getting the information of the same file multiple times in same page.

Other methods this cache effects include stat, file_exists, is_file and more. If the state of a file is changed during the course of the script - say it's deleted manually, not by PHP, your script may not recognize that. By calling clearstatecache, you refresh this cache and make it possible to see the latest file system info.

Ilia Alshanetsky has started to gather more and more information about PHP usage on the web as a whole (that was started here) and has been extended with some additional statistics he's done on the location of the domains he's collected.

The first step of the process has been resolving all of these domains, which is now complete. The next step is fetching the server information, which began, but will take some time to finish. However, even from the domain revolving data there is a lot of useful data to be gleamed, which is what I am now publishing. My first focus was on the world-wide distribution on these TLDs, which at least for me held a few surprises.

He includes a few graphs of the results he's found showing things like:

The US has the most domains hosted followed with less than half by Germany

The overwhelming majority of the PHP domains are in the .com area

In the US, the state with the highest number of PHP-powered domains was Arizona with Clifornia coming in second

If you'd like something more interactive, he's also come up with a clickable world map of the results for you to click around on.

Before going on with the points, let me state something: please avoid flame wars, all the Scala vs. PHP stuff, fanboyism and what not. This post is not about that. Regarding Wade Arnold I have to say that I fully respect him. While I don't know him personally, I know him for his work on AMFPHP, since it was a platform I used to work with before.

Alvaro talks about functional programming and some of the main points he had made about Erlang in a talk he had given - code reload, being ready for multi-core and no shared state between scripts. He talks about how these (really) apply to PHP.

On the Symfony blog there's a recent post mentioning an online conference offering a look into the current state of the Symfony framework and what's coming in the future.

During The State of Symfony 2 you will learn about the current state of the brand new version of Symfony, scheduled for release late this year. Several important parts of Symfony 2 will be highlighted by prominent speakers. And at the end of the conference, the second Preview Release of Symfony 2 will be published, including updated documentation!

Several guest speakers - including Fabien Potencier and Jonathan Wage - will be talking about the future of the framework and how it will integrate with other technologies (like Doctrine). There's two times you can catch the event - one on June 22nd @ 10am and the other is June 23rd @ 5pm (all times are Central Eurpoean Time). The registration will cost 30 Euro for the normal ticket, 20 for Early Bird (first 50 people to register).

On the Ibuildings techPortal today they've posted the latest podcast recording from the 2009 Dutch PHP Conference sessions, Paul Reinheimer's look at maintaining state with Ajax ("in an Asynchronous World").

This talk will examine the two greatest problems in Ajax development (except for that pesky browser issue): Exactly what that "Asynchronous" word means, what problems it creates, and how they can be effectively managed, next the YUI Browser History object will be examined, finally handing control of Ajax applications back to the user via their familiar back button.

The ThinkPHP blog (and Mayflower) are asking for your input on the current state of PHP architecture and what trends are out there.

What is the state of the art of PHP Architecture? Our CTO, Johann-Peter Hartmann, wants to know about it. Furthermore we want to know about the relevance of business goals during architecture creation. It would be great if you could help us filling out this survey, of course we'll publish it later. Please answer questions based on real-world experience and not what you would like to see

The survey asks about what architectural methods you know of, which are put into use in your work and how some of the requirements are defined. They also ask a little bit about planning - what tools you use for your plans (like a whiteboard, UML or good old pencil and paper).

On ProDevTips.com there's a quick new tutorial posted about using the Zend_Http component of the Zend Framework to fetch a remote page that requires cookie authentication - a "cookie jar".

As it happens I'm very satisfied with the performance of Zend Http when it comes to the fetching and cookie parts. [...] Note [in my example] the use of $client->setCookieJar();, that is all that is needed to manage the logged in state, awesome. Without it the second post to adv_stats.php would've failed due to unauthorized access.

This fetching method pulls in the remote file, parses out the table (as defined by a pattern match) and grabs the rows/columns using getRows and getColumns and manipulates the content inside.

In this new post to the Stubbles blog Frank Kleine looks at the current state of annotations in the PHP language and applications.

Annotations are a really helpful feature in present-day development. An annotation is a special form of syntactic metadata that can be added to source code elements such as classes, methods, properties and parameters. They do not affect the program semantic directly, but can be used by tools and libraries to handle such annotated code in a certain way.

He notes that, as of right now, PHP doesn't naively support anything like this but that there are additional libraries that can be used to augment the standard PHP performance and use them (like a feature in PHPUnit with @assert and @test). He also go through several of the other libraries that make it possible including Addendum, FLOW3 and the XP-Framework.

The PHPNW conference happens on November 22nd in Manchester (UK) and is a day-long even packed with great speakers and now a great panel discussion too. You can still register for your tickets on the conference website.