|
|
Poll / Debate: Is Php A Programming Language Or A Scripting Language? | ||
Discussion by dserban with 12 Replies.
Last Update: February 16, 2008, 7:02 am | |||
People seem to be divided into 3 camps.
Some people are saying things like:
"but php is a programming language..."
"it is a full-fledged programming language; it's actually quite similar to c++, and also offers classes, which I consider a powerful feature"
Then again others are saying:
"by official definition I would imagine, I don't like thinking of it as one"
"someone i know is making a php bnc, but in all other cases, Php is scripting to me"
The third group of people chime in with:
"well, sure it's a programming language, but it's still a scripting language. Traditional programming languages allow stand-alone applications, which PHP doesn't yet"
I would like to start this formal discussion with an example of how you can run a PHP piece of code from the command line, outside of the context of a web rendering engine.
When you download and decompress PHP, you end up with a directory that looks like this:
[console]C:\Apache\Apache\php>dir
Directory of C:ApacheApachephp
08/15/2007 11:24 AM <DIR> .
08/15/2007 11:24 AM <DIR> ..
05/23/2006 08:00 AM <DIR> cli
05/23/2006 08:00 AM <DIR> dlls
05/23/2006 08:00 AM <DIR> extensions
02/16/2003 12:02 AM 32,881 install.txt
02/15/2003 11:20 PM 3,276 license.txt
02/15/2003 11:20 PM 36,823 magic.mime
05/23/2006 08:00 AM <DIR> mibs
02/15/2003 11:20 PM 142,387 news.txt
05/23/2006 08:00 AM <DIR> openssl
05/23/2006 08:00 AM <DIR> pdf-related
02/16/2003 12:02 AM 45,056 php.exe
02/15/2003 11:20 PM 3,872 php.gif
02/15/2003 11:20 PM 38,898 php.ini-dist
02/15/2003 11:20 PM 39,502 php.ini-recommended
02/15/2003 11:20 PM 7,952 php4embed.lib
02/15/2003 11:58 PM 1,282,048 php4ts.dll
02/15/2003 11:20 PM 169,956 php4ts.lib
05/23/2006 08:00 AM <DIR> sapi
08/15/2007 11:23 AM 47 standalone.php
07/13/2006 03:58 PM <DIR> uploadtemp
12 File(s) 1,802,698 bytes
10 Dir(s) 278,102,016 bytes free
C:\Apache\Apache\php>[/console]
Please note the existence of the executable php.exe.
I created a little PHP piece of code in a file called standalone.php:
[console]C:\Apache\Apache\php>type standalone.php
<? echo "I am a standalone PHP application." ?>
C:\Apache\Apache\php>[/console]
Let's imagine for a moment that Apache isn't installed on my PC and let's try to execute that PHP piece of code:
[console]C:\Apache\Apache\php>php standalone.php
Content type: text/html
X-Powered-By: PHP/4.3.1
I am a standalone PHP application.
C:\Apache\Apache\php>[/console]
There is a way to suppress the extra fluff at the beginning of the output, by specifying the "-q" (for quiet) flag:
[console]C:\Apache\Apache\php>php -q standalone.php
I am a standalone PHP application.
C:\Apache\Apache\php>[/console]
Edit: I just realized now, after looking over my posting again, that putting stuff inside the console tag interprets the backslash as an escape character, so wherever you see C:ApacheApachephp - it was originally
CODE
C:\Apache\Apache\phpWed Aug 15, 2007 Reply New Discussion
I'm sure others have opinions, but personally I feel it's a mix but still is rarely if ever used for stand alone apps. It shines as script.
Wed Aug 15, 2007 Reply New Discussion
Best regards,
Wed Aug 15, 2007 Reply New Discussion
QUOTE (TavoxPeru)
I think it is a mix of both, the majority of people use it for web development but you can also create stand alone applications, and remember that with the use of the GTK you can also create graphical applications.Best regards,
Link: view Post: 109209
I think its very true!
And it thinks me of installing it right now!
Wed Aug 15, 2007 Reply New Discussion
As long as you don't complile prior to running your application, you can say that a language is a scripting language.
Thu Aug 16, 2007 Reply New Discussion
There are two categorizations we are talking about:
1) programming language versus scripting language
2) compiled versus interpreted
In my opinion, those are independent or ... (trying to find a better word to describe it) orthogonal criteria (yes it sounds more like geometry, I know).
You can have:
- compiled programming languages
- interpreted programming languages
- interpreted scripting languages
I'm trying to think of a compiled scripting language, but none comes to mind.
Thu Aug 16, 2007 Reply New Discussion
QUOTE
Scripts remain in their original form and are interpreted command-by-command each time they are run.The name 'script' is derived from the written script of the performing arts, in which dialogue is set down to be interpreted by actors and actresses--the programs.
Source: Wikipedia
Thu Aug 16, 2007 Reply New Discussion
QUOTE (wutske)
You didn't create a standalone application, you've created a script that is interpreted by another program (php). Thus PHP is a scripting language.As long as you don't complile prior to running your application, you can say that a language is a scripting language.
Link: view Post: 109299
Ok, i think it is true in a certain way but i don't completely agree with you because there exists compilers for PHP, the one i remember in this moment is the Roadsend PHP Compiler, this is what it says on its main page:
QUOTE
Roadsend PHP Compiler is a free, open source native compiler for the PHP language. It compiles PHP source code to stand alone, native binaries which do not require an interpreter. Roadsend Compiler can build online web applications with Fast/CGI, offline web applications with an embedded web server (MicroServer), desktop GUI applications with PHP-GTK, and console applications. It is available on Linux, Windows, and FreeBSD.For more information visit the Roadsend PHP Compiler website.
Best regards,
Fri Aug 17, 2007 Reply New Discussion
Fri Aug 31, 2007 Reply New Discussion
xboxrulz
Sun Sep 2, 2007 Reply New Discussion
But generally speaking, it comes down to the fact that PHP cannot usually be run without being interpreted. It is read, not compiled.
Tue Sep 11, 2007 Reply New Discussion
I still say php is barely a programming language though haha, people use it for scripting 99% of the time so to me it'll always be a scripting language that has the ability to be used for more
Thu Aug 16, 2007 Reply New Discussion
Sat Feb 16, 2008 Reply New Discussion
Php 101: Php For The Absolute Beginner (2)
|
(7) Does Php Have This? IP Address
|
Index




