What is the difference between JSP and PHP?
Answer
PHP is an open-source page scripting/templating system that is very similar
to JSP and ASP. It defines its own scripting language, which looks and feels
a lot like Perl. JSP uses Java as its scripting language (although some
implementations support JavaScript, such as Caucho). ASP uses VBScript.
PHP is very popular -- it is used on over a million web sites -- but its
main advantage (IMHO) seems to be that the language, being more "scripty"
and Perl-like, is less intimidating to the great unwashed mass of HTML monkeys
and hackers. In the long run, JSP and Java provide a more powerful system.
Here is a list of reasons why JSP is better than PHP:
1.Anything you cando
with PHP, you cando
with JSP;
the reverse is not true
2.JSP is much more powerful, since it has access to all the Java libraries.
PHP only has access to PHP libraries
3.JSP is Object-Oriented, so leads to cleaner code that's easier to debug, maintain, and improve.
(PHP also allows objects, but the object model is more primitive, and most scripted pages ignore PHP objects
and just use normal variables.)
4.The equivalent syntax in JSP is just as simple to learn, so you can get up and running just as quickly -- that is,
there's no extra startup cost in using Java, at least not a significant one
5.Java programmers (as opposed to 15-year-old hackers or HTML monkeys) appreciate the importance of a clean language
with complex OO data structures and strong typing
6.With JSP, if the code inside a page gets too big, or if you want to use it else
where, you can cut it out, make it
into a Java class, and invoke it from anywhere in your application (even not from a page). With PHP, you're stuck
inside the HTML box.
7.JSP's concept of state management and persistence is more explicit and powerful than PHP's. With JSP, you can specify
whether a variable persists for the page, the request, the session, or the application (or if it's just local to the function).
The JSP engine automaticallydo
es the right thing with cookies so you have access to the variable on later requests. With PHP,
you just have "global" and "not global", youdo
n't have automatic session management, and have todo
your state thing manually
with cookies or hidden variables.