Future of PHP Revealed
Anonymous Coward writes "In an interview with linuxpower.org, the developers of PHP present hot facts on the future of PHP, the next major release PHP 4.0, the license change, and what window managers they use."
jimjag note: See the Apache section for info about the latest beta release of PHP 4.0.
jimjag note: See the Apache section for info about the latest beta release of PHP 4.0.
Interesting to see that all of the developers listed slashdot.org as web site they visit often.
PHP is going to be a strong alternative to ASP, and its good to see that the developers are being open and forthcoming about developments in PHP. Way to go...
all i have to say is, PHP is the shit... so powerful, so fast, so easy!!!
PHP is almost better than sex... almost...
-andy
I wanted to point out that Eugenia Loli is offering up to $260 for PHP 4 on BeOS ($120 for the Xitami and $140 for the RobinHood add-on). More details at http://www.ukbug.org/ Scot Hacker is also offering $140 for porting PHP 4 for Robin Hood.
---
I haven't quite looked at PHP, although it seems a popular enough page generation system. HTML::Mason, a Perl-based system written by Jonathan Swartz was designed to work on top of the Apache Web server running the mod_perl embedded Perl interpreter. Mason is a fully componentized system and is being used by Randall Shwartz himself ! Let's see, PERL, Apache, mod_perl, Randall contributing to the codebase (occasionally), what can possibly be better than that? --Alain
moo.
ok...in the linuxpower article, in the question regarding the differences between php3 and php4 licencing, one of the developers states:
"The PHP license used for PHP 4 is actually less restrictive than the PHP 3 license. In PHP 3, commercial companies had to get written permission from us in case they wanted to distribute PHP 3 with their product, we have completely removed this clause from PHP 4."
on the main page of www.php.net, it says:
"You can use it for commercial and/or non-commercial use all you want."
yet, http://www.php.net/license.html says:
PHP is distributed under 2 licenses. You are free to choose whichever license suits your requirements best. The first is the traditional GNU GPL (General Public License) and the second is the PHP License. If you wish to include PHP in a commercial product for resale, the PHP license permits it as long as the stated conditions are met.
further investigation of the aformentioned "PHP Licence" indeed shows that permission from the development team is required to include PHP in "...larger works derived from, or which bundle PHP..."
im wondering how a piece of software can be distributed under two licences, where one is the GPL which doesnt explicitly mention anything about companion licences?
ok, forgive me if this has been adressed, or if ive missed something thats blatently obvious. im not trying to dis anyone or point fingers or anything...im just trying to quench my non-lawyer curiosity.
--Siva
Keyboard not found.
Keyboard not found.
Press F1 to continue.
Need to say more?
yes. perhaps you could cite some reasons or examples which would serve to reinforce your claim?
--Siva
Keyboard not found.
Keyboard not found.
Press F1 to continue.
...and throw away machine cycles, maybe PHP _is_ cool. But if you rather have an organized, object oriented web development interface, with multithreaded persistent database connections, a standalone web server, plugable modules and no overhead per call, try Zope. All the great new sites use it, like AppWatch, Technocrat and iMacLinux. Why? How about going from drawing board to full featured site in 2 weeks? And please don't mention the PHP + MySQL combo, the MySQL license sucks. OpenSource rules, I don't care about the rest.
Why is this moderated down?
Zope is better than PHP.
There are too many reasons why to enumerate here however I suggest checking out http://www.zope.org for more information.
I think one vey good part of Zope is that it encourages you to seperate presentation from system logic.
(Also acquisition is _really_ powerful, not to mention the way it allows multiple people to easily help create the one website, also the fact that it supports many open protocols, one interesting one being XML-RPC.)
Benno
I worked for a while on a web-based application, where we used ASP/IIS with MSSQL server on the backend. We would have loved to migrate to Apache/PHP, but the size of the existing codebase would have made a port too costly. I've heard of a number of other people in this same situation.
The ASP->PHP port would be much easier if PHP supported the ASP object model. This would allow for dumb parser/translators to be written (like asp2php) that could work nearly flawlessly, because arbitrary translations don't have to be hardcoded in. For example, instead of hunting down how to do a redirect in PHP (ie. writing the header manually: this took me a good 15 minutes to figure out), I can just type response.redirect().
If mindshare is what this project's after, I can't think of a better way than to get a horde of gracious ASP/IIS converts. The stability and performance boosts alone should be enough to convince all but the most devout Microsoft fanatics.
Heh, it's being moderated because the /. folks don't support it. What a joke. Maybe I could say like our friend that PostgreSQL is better (and OpenSource!) than MySQL?
Why is this moderated down?
its properly moderated down because (IMNSHO) its purely argumentative. the author does not attempt to justify his claim that zope is better. the claim by itself contributes nothing to the discussion (other than to possibly motivate responses such as "no, PHP is better" or "you are dumb"), hence the post was moderated down.
you on the other hand have stated two reasons which appear to support the claim. while i have used neither Zope nor PHP, and thus am not in a position to weigh your argument, i can at least say that it has some substance and is relavant to the discussion.
--Siva
Keyboard not found.
Keyboard not found.
Press F1 to continue.
Very informative but :
:0
- they don't get into the details enought. I would have loved to read more stuff about databases connectivity, gif creation and so on.
- they repeat themselves.
- they spent too much time on GPL != QPL.
But I insist, it is worth reading.
P.S. : at least there is one core hacker running win32, and admiting it. I think it's a good point
Looking for a great online backup: Green Backup
I'm a long time PHP developper (since early PHP2) and I simply love this language since the beginning. Like they said in the interview, the syntax is really clear and simple so it's really easy for anyone to read someone else's code and start modifying it. Anybody tried reading the (outdated) slashdot source code lately ?
.4 seconds to generate with PHP3, and now only .17 seconds with PHP4. It will be even better when we will be able to preprocess the files (ala java). See http://www.zend.com for some benchmarks.
I really like perl for some of it's strenghts but unless you have a LOT of experience with it it's really hard to modify a big project written with it (from my own experience).
The C like syntax of PHP is really neat, well thought and emacs (vim also) works like a charm with it.
One of the biggest improvement of PHP4 is the speed, it's really impressive. I'm working on a rather complex site, and a single page took
Lately a java module for PHP4 has landed in the cvs. At first I wondered why they did such a thing, but take a look at this code :
$InetAddress = new Java("java.net.InetAddress");
$localhost = $InetAddress->getByName("www.yahoo.com");
$addr = $localhost->hostAddress;
Basically it does a simple nslookup on www.yahoo.com, but uses a java class to do it. Isn't it amazingly easy to use ? Think about what you will be able to do with this extension ! And of course it can use a lot of JVM (Kaffe, IBM JDK 1.1.8 for linux, sun JDK 1.2.2 for NT and others).
Any serious web developper should give PHP4 beta2 or the soon to be released beta3 and experiment a bit with it. I can understand someone not liking it, but I certainly can't understand someone not liking it without at least trying to use it !
J-F Mammet
webmaster@softgallery.com
These are the little bits I know:
- Built-in session management.
- Customizeable session swapping (session info is swapped to the hard drive if session is inactive for a specified time period.
- Modular.
- Cross-platform.
- Compiled.
- All the features of Java, such as inheritance.
Did I miss anything? Are there any huge drawbacks? The Java Web Server (JWS) home page is here (http://www.sun.com/980310/javawebserver/ - if I used the URL as the link's text, Slashdot filtered out the </a> for some reason).--
--
Will it be PHP vs. Perl or PHP vs. Python?
PHP vs. Intercal, perhaps?
~~~~~~~~~
I use both on a daily basis. Both are excellent.
..That java is overkill for most things.
As much as I love java, PHP lets you do simple
things very easily. Of course, if you want to
do extremely complicated things, java servlets
might be the way to go.
There's no "true" answer, just choose what suits
you best.
PHP, and indeed ASP are not really great technologies.
Sure they work; they are good for quick prototyping, but every application I have seen written in them soon become a huge mess of "include" files that all need to be loaded in for every page hit. Yuck!
It doesn't scale very well, it is hard to maintain, and being purely interpreted, it difficult to debug (e.g. syntax errors aren't picked up until you execute the given line).
Unless you are very disciplined and limit the php pages to very presentation-level stuff, you end up with something that is harder to understand and maintain than even c (because it doesn't have the flexibility of it), with none of the advantages (even simple bugs cause the interpreter to bomb with an obscure error message, and it is very slow).
As stated elsewhere, Java servlets are easier to write, easier to maintain, and scale much much better. The problem on Linux is finding a decent vm for it.
ASP/PHP has its place, it just seems to get overused. We use it in 2 web applications, and in hindsight, it wasn't a wise choice for either.
NotZed
PS The bit about the GPL license in the FAQ I just find bizarre.
quick guide to slashdot moderation:
"linux is better" -- redundant -1
"freebsd is better" -- flamebait -1 (unless accompanied by well reasoned argument, and at least acknowledging places where linux is better, like SMP, drivers, and scheduling latency and jitter, in which case Informative +1).
"WinNT is better" -- flamebait -1
"Win98 is better" -- no moderation, since people are laughing to hard to select from the list and click the button.
Not ready yet.
;) ).
I prefer to use 3rd generation stuff at least. That's my rule of thumb, unless the stuff is so obviously good. Sorry Java isn't. It was obviously terrible at the start- a system programming language with the "speed" of a scripting language, albeit with objects.
At the moment you have to include a number of classes if you want to do decent text processing.
Try doing a "split" or "join" in a single line with Java.
Yes Java could do all that if blah blah blah..
Yes pigs could fly if they had wings (or an airplane
Here we go:
...)
Perl is GPL
PHP not
DBI is database interface independent
PHP not
PHP is faster
Mod_Perl too (but use more memory)
Php is easier if you are starting from scratch
Perl is powerfull if you are coder
Huge existing code base of Perl
Rare PHP source available
PHP is good for small to moderate sized
Perl is wonderfull real project
perl is a real language
Php is 'just' a web language
Great Perl Module (DBI, CGI, IRC, FTP,
Few library un PHP
What would be really cool would be to have CORBA client bindings for PHP. Then you could use PHP for the presentation layer only and make your application accessible from as many languages/platforms as possible. PHP has never really struck me as a great language for application development, just for server-side web page scripting.
I guess the ORB to use would be ORBit.
Zope is a framework, PHP isn't - it's a language plus a set of modules. Zope's language is Python, for what it worth.
From what I know, Zope is suited for large to very large projects, with well-defined standard site structure, while using it for small project could be a great over-kill. Also a concern is that it's way slower - just because of a complication involved.
-- Si hoc legere scis nimium eruditionis habes.
Microsoft gets a lot of abuse because it doesn't innovate, but surely this is an example of something innovative from MS.
The PHP concept is a directly copy of ASP which has been out for 4 years now. In the interview they were going on how great the session module is, but ASP had this in 1995.
s/perl/php/g;
s/wasnt designed/wasnt designed for my poor education/g;
s/a shit/that i don't know/g;
s/crap/good idea/g;
s/thumb-tacks/perl/g;
s/gum/c/g;
"you forgot to mention that php is a that i don't know language that wasnt designed for my poor education at all, it simply was 'put together' in a mish-mash of good idea all tied together with perl and c."
What a good constructive criticism .. NOT !
These people should better try PHP before bashing it, it's a wonderful all purpose language, it's easy to set up, easy to learn, has great online documentation, and it's free !
Everything you do in [insert whatever web dev tool name] you can do it with PHP.
Personally I had never done any web development before, then I tried PHP, and two weeks later the project was finished, and it's working really well !
PHP is great, maybe some of you use other languages, but it's not a reason to bash something you don't know ...
Well, now my rant is over, I just wanted to say THANKS to the PHP dev team, they made an amazing work with PHP3 and PHP4, and they have all my wishes of success.
The php4 license changed because the Zend licence was qpl'd!
The zend team choose the qpl as they may wish to restrict its use.
The zend team may wish to comercialise the use of Zend (outside of php).
The zend team may wish to sell a"zend - precomplier" that takes php pages and precomplies into a form of byte-code - to speed execution - and allow distribution of non reversalable bytecode pages - sounds a bit like comercail closed source stuff to me.
HOWEVER
php is excellent and should be used above ASP's or Java JSP's / servlets any time.
Is it just me or does ASP rarely give a useful error message when it barfs? It's often something like:
"Error 8000AFDZ"
???
WTF
I'm using ASP with JScript. Decent error messages are enough to win me over to PHP. (Not too mention the fact that PHP has docs which are not "a complete work of fiction", and the fact that you don't need to cough up money for 3rd party plugins to do the most simple stuff.)
Go PHP!
ok I'll stop ranting now.
--
Simon
Who is busting for PHP4.
Oops, sorry, I am sleep-posting again. Word to your manager.
As I understand the QPL allows derivitive works and modifications provided the original liscensce holders gain the right to redistribute your modifications.
AND
Any modifications you make must be distributed as a seperate patch file.
The first clause doesn't seem to cause the community any difficulty (so some people can sell it big deal)! However the second clause is very bothersome. Suppose KDE or PHP really catch on and people decide to improve/extend the base libraries. These products could still be around and kicking 10-15 years from now just like X is. But by that point the liscensing companies may very well have faded from the picture.
This leaves us with a huge bloated mess of patch files at the core of an expanding system making it difficult to work with. Now I understand the desire of the company to keep their product name undiluted and to recieve patches so perhaps the minor modification that the patches must be made availible on request (you can always go back and diff it) but the modified source may be distributed UNDER A DIFFERNT NAME!!
Small modification but it could make a big difference in the longterm future of some products.
Marriage is the "pseudo-ethics" that cloaks the messy truth of sexuality in the raiment of propriety -- it's "Don't Ask,
-- I reserve the right to be completely wrong --
These are all descendents of CFML, but the point is PHP is open source and multi-platform. Jim ------------ "And so...", said the billionaire's new wife, "now I know why you called it microsoft."
:-)
(old joke)
--------------------------------
That's probably what I'll stick with for the time being, as I am uncomfortable with the new license.
Too bad the Zend people are horking things up for everyone.
A shameless plug for phpbuilder.com. No, it isn't mine, but it gets its connectivity from the same ISP I use. Those people who have been complaining about a lack of PHP source code and information, you should visit this site.
And this has been discussed. Database abstraction in general offers you a limited amount of functionality of native API's. It's the least common denomenator approach. Let's face it, most DB's have more API functions that connect, query, and disconnect. With an abstraction, the API has to work the same way for every db, which means you can toss out all that database specific functions that would be available to you. As the article said, there will probably be a database abstraction coming to php anyway, but for now there are several options written in PHP to allow this.
Any competant developer realizes that there are many tools that can be used to do a specific job, and some will lend themselves more to a particular application based on features, support, developer skill and knowledge, availablility, and hundreds of different factors. Besides, Zope is an app server and PHP is a language. If you want a comparison, you need to look at Midgard, which I personally prefer over Zope because it is much more content based. I can let my lackeys in to update styles or content without them ever having to touch or look at my code.
There is OO Overloading support in PHP4 that has thus far been used to implement COM and Java support (yes, php can create and manipulate java objects). The support is there, there's even a line in the COM extension source encouraging CORBA developers to add support. The developers just have other things to do now, so a generous individual willing to implement it would be great :)
I have used Embperl and it does everything that PHP does, and doesn't require their 'inane' collage of languages syntax. Straight perl can be embedded in your html with just a few square braces. Nothing new to learn if you know perl. With a combo of Apache/mod_perl/Embperl/MySQL dynamic pages are both quick and easy to make.
Just my $0.02
This is a gripe I've had for years as these hybrid "You've got your peanut butter (code) in my chocolate (html). No, you've got your chocolate in my peanut butter!" web development systems have grown.
As a code-in-HTML system, PHP rocks over ASP. No doubt. If that's what you want.
While you CAN create complex, rich applications with those systems... They DO get hard to maintain and modify, and VERY hard to retool the user interface. And they throw monkey wrenches into the mix of task delegation between application developers, UI developers (i.e. HTML coders), and designers.
That's why I love Zope, and that's why I'm writing a competitor to it in Perl called Iaijutsu. I want the logic separated completely from presentation and to minimize the impact of changes on one from the other.
For a quick example: Can you do 'skins' with your web application in PHP? In other words, completely swap out the look-and-feel for another without touching any Perl/PHP/ASP/Python code? Iaijutsu can, because it uses a template system where the Perl code supplies a set of data to an HTML-like template language. Separation of logic from presentation.
If you don't like skins, then... can you instantly change the entire graphic design of your site using only graphic designers and HTML production artists when the Client sneezes? I, as the application developer, don't want to stay the weekend if it's only because I have to make sure my PHP code in the HTML doesn't break.
So, while PHP is great, compared to other HTML-and-code development environments, I hate the whole concept. I'm thinking as the web is maturing, it's turing more into an application environment.
If you're coming from an HTML-oriented standpoint, trying to make those pages do something, then PHP seems like the dog's tuxedo. But if you're coming from an application-oriented standpoint, thinking about your data and your functionality, and the window dressing later... the code-in-HTML concept does not make that easier.
I actually have the thing installed on my system too. :( But seeing what direction ht project is headed, it's time to rm it.
Moaning? Zealots? I suspect this is marketing-speak for "Some significant complaints have arisen from those who care about licensing issues and software freedom."
Very disappointing. :(
There are so many different tools out there...because we all have out own style, we will pick the tool that (a)best fits our style (b)is required for a paying project. There is no need for the "My Tool Is Better" argument here.
If you have a job...that pays well...and have toys, does that make you more "right" than anyone else?..that also has a job, money and toys?
m1m3r - n. - a leet speak performance artist that sometimes gets trapped in an imaginary glass box
PHP is for small projects, the majority of us come across the small to large projects. I have been playing with Perl for about 3 months now and have been thinking about using ASP on my larger projects, however, I don't want to be tied down and raped by Microsoft. PHP rocks!
Why make such a big deal about it? If it is free and open source and a good product then why should we care what the license is? Or is there something I am missing out.. I started using PHP3 since way back and I have used it in several hundred websites and will continue to use it even in the event that (God Forbid) I would have to pay for it.
Movie News - "Entertainment news, bitch!"
We've done a few PHP sites here at TekLab, and live by it as a platform for building smart web applications.
One of the best examples I can think of is my Totally Free Sample Library, which can be accessed here:
http://www.samplelibrary.net/
We developed this site using totally free tools, and it's a shining example of the power and flexibility of the PHP/Apache combo.
The most difficulty I have with Apache/PHP though is explaining to my clients that yes, in fact, this amazingly powerful platform that I want to use for their projects *is* free, and it is fundamentally a better choice than IIS/ASP for all of their work. They just can't believe it.
Then I show them what we've done with SLN, and it's pretty much a done deal...
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
I was really impressed with Zope but I still think they have a ways to go with the documentation. There is a very steep learning curve. Yes, I'm an OO person and a python person. But it was still not clear how to do some things.
I chose php for my project instead and was very pleased.
I just wanted to make a quick response to the various voices who claim that PHP cannot be used for large projects. I think this is a very misguided viewpoint, and in my experience PHP is a terrific platform for delivering a large site.
I wrote almost all the code for Catalyst Recruiting - a site that helps small, startup, and nonprofit companies find top college students to hire. It's not a gargantuan site, but it handles a fair amount of traffic with a high degree of customization and 99% dynamic content. It was built entirely on Linux using PHP3 and MySQL in roughly two months.
Now, PHP3 has some limitations, and it's OOP model leaves something to be desired, but I have found that it makes it pretty easy to use objects to abstract away the interface from the logic of the program. This enables me to work pretty seamlessly with several design people who don't know PHP from their own ASP.
Of coures, when PHP4/Zend hits, hold on to your hats. Not only will our site be able to render pages with almost the same speed as static content, but the expanded object model will really make life easier.
PHP is a great language for rapid deployment of custom software. I'm so pleased with it, that I'm thinking of open-sourcing the Catalyst software as an add-on to either PHP or PHPLIB. Anyone think that'd be a good or bad idea?
Eric
Can your IM do this?
Actually both are valid. According to dictionary.com, the 'c' comes from middle english which came from old french which came from medeival latin. The 's' comes from traditional latinate licens (my computer won't render the accent over the e), which means freedom. I've seen both used often and validly.
I especially love the part near the bottom where they ask what everyone's favorite website is, and everyone responds with "Oh, I just love me some slashdot!"
PHP is not evil. If there are evils, it is those who want to take other people's work for free and free forever.
You used 'Perl' and 'Logic' in the same sentence! Thanks alot, now I'm going to have to go to church on Sunday!
Hey, that's a nice site functionality wise, but do yourself a favor and hire a designer! Programmers shouldn't be designers.
Hey, I tried to register at Catalyst (by clicking on Register) and it just reloads the same page. Not a good testimonial for PHP IMHO.
... to see that a new beta of PHP was released after they got an article at /. Great tools don't this tip of pub to be used. Grow.