Slashdot Mirror


PHP 4.3.0 w/ZEND 2 Alpha

Twintop writes: "PHP.net has released the a new version of PHP 4 to include the new Zend 2 Scripting Engine. This alpha update adds more increased support for Java and .NET technologies. More can be found on PHP.net and Beta News.com."

12 of 32 comments (clear)

  1. PHP has finally made it... by metacosm · · Score: 4, Interesting

    Long ago, I used php on a very small project, and it worked wonderfully (due to the utter simplicity of the project).

    Since then, I have not touched it, due to immature error handling, terrible objects and inconsistancies between functions and methods.

    It seems that this version (based on the Code Samples) has fixed most everything I once hated, and that I might get to use php in a production enviroment sometime soon.

    Most important things to me are try/catch and destructors.

  2. So misguided by andy@petdance.com · · Score: 4, Interesting
    I'm so frustrated by the culture of performance:
    Private Members.
    The Zend Engine 2.0 introduces private member variables. Note that for performance reasons no error message is emitted in case of an illegal access to a private member variable.
    "For performance reasons", they're ignoring the encapsulation that would help correctness...
    1. Re:So misguided by zangdesign · · Score: 2

      Well, when you consider that PHP is primarily used as a scripting language on web servers, it makes sense to optimize for performance. You can't have processes hanging around too long, else they start to clog things up and pretty soon you have a really lovely rackmounted paperweight.

      Performance is everything for web servers. Get 'em in, get 'em out, next please.

      --
      To celebrate the occasion of my 1000th post, I will post no more forever on Slashdot. Goodbye.
    2. Re:So misguided by andy@petdance.com · · Score: 5, Informative
      Well, when you consider that PHP is primarily used as a scripting language on web servers, it makes sense to optimize for performance. You can't have processes hanging around too long, else they start to clog things up and pretty soon you have a really lovely rackmounted paperweight.

      And that's what happens now if you do any amount of use of classes. Unless you buy the Zend Optimizer, anything that uses classes requires tons of recompilation of the PHP code for each page. We found that we were spending 20% of real response time just recompiling the class files for each page.

      This performance tweak is just a drop in the bucket compared to that.

    3. Re:So misguided by andy@petdance.com · · Score: 2
      All this affects is ease of debugging.

      That's pretty huge in my book. PHP already doesn't support any sort of accessing of the callback stack (although I see it's in the new one), much less interactive debugging.

      The lack of debugging facilities is the #1 reason why I and my department are getting away from PHP.

    4. Re:So misguided by cymen · · Score: 3, Informative

      Have you tried the open source PHP optimizer APC:

      http://apc.communityconnect.com/

    5. Re:So misguided by BusDriver · · Score: 2, Informative
      Try using this fantastic PHP tool.
      Just as fast as Zend Accelerator, costs exactly nothing.

      The PHP Accelerator.

    6. Re:So misguided by Electrum · · Score: 2

      I'm so frustrated by the culture of performance

      I agree completely. The PHP developers seem very misguided. They refuse to fix many bugs in the name of "performance". Things like infinite recursion crashing the interpreter. At the very least, they could include a debug version, which would run slower, but help developers find errors. Things like the new private member variables silently erroring is NOT acceptable behavior for a scripting language, especially one that claims to be easy to use.

      PHP already has enough bugs that make it hard to use, especially for those not experienced with it. It's really fun when a syntax error causes the parser to indicate that the error is hundreds of lines away from where it really is, or even in a separate file. Adding MORE bugs of this kind in the name of "performance" does not help to make PHP more professional. I really like PHP, and have been using in commercial environments for more than two and a half years, but these types of things are making me seriously consider switching to Python.

  3. Commercial addons restricting by Anonymous Coward · · Score: 2, Insightful
    It was often said that the developers could have addon products to GPL software and that's how you could make money. With PHP+ZEND, and other GPL software that has proprietary offshoots, it's really proven to me that this is no good thing. The GPL software is pigeonholed in its current role, and more often than not it will never go on to fill the role of the addon software.

    It's not out of dislike for commercial software - it's because PHP is a scripting engine, and their addon Zend optimiser isn't. It's not that there aren't open source replacements but they'll never become part of the base PHP.net distro. This affects the quality of the software.

    Is there anything that can be done about this? Especially for other new projects that don't want to let social issues affect the quality of their software.

  4. Bringing it all together by babbage · · Score: 2

    What a coincidence, I was just looking over this stuff this morning. Does anyone know how close we are to being able to run PHP with Apache2.0, preferably (but not necessarily) on Solaris? Looking over PHP4.2.1 notes this morning, it looked like Apache2 support still wasn't there yet, and some people seemed to be having problems building the language on Solaris. Does PHP4.3.0 address those problems? Should I take "Alpha" to be the warning that it sounds like it is, or would it be safe to try it out now? Would it make more sense to stick with PHP4.3.1 and Apache 1.3.x for now? I'm sure those should build okay....

  5. Alpha version by Wonko42 · · Score: 3, Informative

    It should have been pointed out in the article that this is an ALPHA version based on the 4.3.0 tree. This is not 4.3.0.

  6. Stupid me by Wonko42 · · Score: 2

    Now that I re-read the title, I see that they mentioned that after all. Ignore me.