This is an old revision of this page, as edited by Draicone (talk | contribs) at 00:20, 30 June 2006 (→Criticism: My views). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Revision as of 00:20, 30 June 2006 by Draicone (talk | contribs) (→Criticism: My views)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)This article may be too technical for most readers to understand. Please help improve it to make it understandable to non-experts, without removing the technical details. (Learn how and when to remove this message) |
Functional programming in PHP
PHP4+ has some support for functional programming: almost-closures (uncomfortable, outer variables are inherited as values), variable functions (you can bind, receive and/or return named or anonymous functions as variables), and well-known high-order array functions like array_map, array_walk, array_filter or array_reduce which are in the standard library.
If we're saying Python supports functional programming, I think we could say PHP does too, and add it to the language comparison article.
PHP as an alternative to ASP.NET?
"The PHP model can be seen as an alternative to Microsoft's ASP.NET/C#/VB.NET"
Don't you think that this should be removed, as PHP is just a second league when comparing ASP.NET features? Please, be objective and unbiased.
- Well, by leaving out Macromedia's ColdFusion system, Sun Microsystems' JSP/Java system, the Zope/Python system, the Mod perl/Perl system, and the Ruby on Rails framework, you are implying that ASP.NET/C#/VB.NET is superior to all of these. Is that really the case? And, is it really about which is better, or is it more a question of what is better suited for a specific task.
- I don't agree that is should be removed - Jerazol 13:49, 11 May 2006 (UTC)
- "Objective and unbiased" is what it is. "can be seen" is fairly neutral in terms of POV, unlike, er, for example, "just a second league when compared ...."
- "Can be seen" at least informs us that it's an opinion, not a fact. If it were changed or removed, then your POV would *become* the "fact", and there is therefore no reason to make the change. Renaissongsman 22:59, 6 June 2006 (UTC)
- PHP is not second rate compared to the Microsoft technology stack. It is a popular, high performance, open source alternative which is just a ubiquitous as Microsoft on the web. In fact, a more informative statement is: PHP is one of the two dominant technologies for implementing websites (Microsoft's .NET is the other). --PHPedia 21:10, 11 June 2006 (UTC)
The mess that is this article
The middle third at least is probably not suitable for this article. You're not reading an encyclopedia to learn how to program. The issue is where to put it. As for the huge list of modules at the end, I'm just going to delete that I think. Chris Cunningham 15:04, 18 May 2006 (UTC)
- I couldn't agree more. I think that the learning how to program bit is more suited to Wikibooks. Rob.daemon 03:45, 19 May 2006 (UTC)
PHP6
I'm just wondering if this is the place where we can put information about PHP6, as quite a bit of progress has been made in it's development. --TheHeadSage 14:19, 6 June 2006 (UTC)
- A "development" section would be better than sprinkling it all over the article I think. Chris Cunningham 16:51, 19 June 2006 (UTC)
- Even another article called php6, referred to from this article? --Draicone 23:05, 28 June 2006 (UTC)
Criticism
Imo there are a couple of passages in the criticism section that should be removed, as they are incorrect/not verifiable, or simply silly
The many settings in the PHP interpreter's configuration file (php.ini) mean that code that works with one installation of PHP might not work with another. For example, if code is written to work with register_globals turned on, it won't work on another system that has register_globals turned off. This makes writing portable code more difficult as the only way to ensure compatibility is to assume that features will be unavailable.
register_globals is a silly example to use here, since it's a question about backwards compatibility. Code developed after 4.1.2 should anyway use the superglobals, and not rely on register_globals, and should then work under any circumstances. Other showstoppers are f.ex safe mode etc. I don't agree that this is a valid criticism though.
Method / function overloading is not allowed (Obsolete since PHP5).
Listing every programming concept which isn't supported in PHP is silly and pointless. There's many other OO concepts that also are not supported in PHP4, less so in PHP5 Jerazol 13:01, 23 June 2006 (UTC)
- Very true, and very few languages have all the OO concepts. php was meant for powerful web development, not C++-like flexibility. --Draicone 00:20, 30 June 2006 (UTC)