Before I say anything about anything: the first one to mention this isn't a compiler gets an e- kick in the teeth.
phpCompile can turn your php scripts into windows ( only ) executables. That's nothing new, but what is new, is a php2exe program that support php-5.2.6, plus
THREADING !!
phpCompile has a statically linked and purpose written threading library, this library is very new, but can and will one day give php applications ( such as those written in the fantastic winbinder ) multi threading capability. At the moment, it can and will make multi threaded console applications ( that's a questionably useful feature, but a feature all the same ). It supports few functions for threading, such as create, wait and id, and it's more akin to C threading than the other threads library available for php ( it was abandoned when php4 was the daddy in 2004 or something ). You pass it a function name and an optional parameter ( which can be anything but an instance of a class right now, resources are dodgy too ).
Apart from threading there are some useful libraries linked that are specific to windows programming, such as winbinder, odbc, SQLite. Also a couple of other generally useful extensions such as dom, iconv and libxml, pdo ... if a library isn't linked statically, chances are you can still include the library using phpCompile's extension loader. Some extensions require 3rd party dlls ( such as curl needs libssleay or whatever it's called ), these dlls aren't included you should download a win32 distribution of php-5.2.6 if you want to include anything that's not static.
I wont lie, the executables it creates are not small, however compression with upx is also an optional feature for those of you that are holding onto the 1980's notion that every byte counts !
Every byte does count, I'm joking again, but you must consider that the php runtime is much larger than it has ever been and to provide a decent set of tools some disk space must be sacrificed, the phpCompile executable itself was more than 9mb before compression and is now 2.5MB. Your executables shouldn't be weighing as much as phpCompile does because they will not include the stub twice.
phpCompile is ( of course ) free and you can download the latest version ( as of this post is v2 Beta 4.2.5 ) from
Interviolet LTD
Finally, phpCompile does not "compile" code in the true sense of the word ( indeed, nor does any php2exe ).
It simply packs everything you need into a single exe making use of the php embed sapi, nothing ( with the optional exception of php.ini ) is unpacked at runtime and you can be ( reasonably ) sure your code is safe because phpCompile can optionally use bcompiler to reduce your code to bytecode.
This program is still in development and will be until you see v2-final as the version number. Some more ramblings are included on my site, questions are quite welcome, the quickest way to ask a question is via my site, still everything but threading should be stable.
Enjoy everybody.
PS. No one's going to get a kick in the teeth of any sort, that was a joke and supposed to get your attention, I hope it worked
