mirror of
https://github.com/php/php-src.git
synced 2024-11-24 18:34:21 +08:00
388 lines
8.5 KiB
Groff
388 lines
8.5 KiB
Groff
./" +----------------------------------------------------------------------+
|
||
./" | PHP Version 4 |
|
||
./" +----------------------------------------------------------------------+
|
||
./" | Copyright (c) 1997-2003 The PHP Group |
|
||
./" +----------------------------------------------------------------------+
|
||
./" | This source file is subject to version 3.0 of the PHP license, |
|
||
./" | that is bundled with this package in the file LICENSE, and is |
|
||
./" | available through the world-wide-web at the following url: |
|
||
./" | http://www.php.net/license/3_0.txt. |
|
||
./" | If you did not receive a copy of the PHP license and are unable to |
|
||
./" | obtain it through the world-wide-web, please send a note to |
|
||
./" | license@php.net so we can mail you a copy immediately. |
|
||
./" +----------------------------------------------------------------------+
|
||
./" | Author: Marcus Boerger <helly@php.net> |
|
||
./" +----------------------------------------------------------------------+
|
||
./"
|
||
./" $Id$
|
||
./"
|
||
.TH PHP 1 "Feb 2003" "The PHP Group" "Scripting Language"
|
||
.SH NAME
|
||
.TP 15
|
||
.B php
|
||
PHP Command Line Interface 'CLI'
|
||
.SH SYNOPSIS
|
||
.B php
|
||
[options] [
|
||
.B \-f ]
|
||
.IR file
|
||
[[\-\-]
|
||
.IR args.\|.\|. ]
|
||
.LP
|
||
.B php
|
||
[options]
|
||
.B \-r
|
||
.IR code
|
||
[[\-\-]
|
||
.IR args.\|.\|. ]
|
||
.LP
|
||
.B php
|
||
[options] [\-B
|
||
.IR code ]
|
||
.B \-R
|
||
.IR code
|
||
[\-E
|
||
.IR code ]
|
||
[[\-\-]
|
||
.IR args.\|.\|. ]
|
||
.LP
|
||
.B php
|
||
[options] [\-B
|
||
.IR code ]
|
||
.B \-F
|
||
.IR file
|
||
[\-E
|
||
.IR code ]
|
||
[[\-\-]
|
||
.IR args.\|.\|. ]
|
||
.LP
|
||
.B php
|
||
[options] \-\- [
|
||
.IR args.\|.\|. ]
|
||
.LP
|
||
.SH DESCRIPTION
|
||
.B PHP
|
||
is a widely\-used general\-purpose scripting language that is especially suited for
|
||
Web development and can be embedded into HTML. This is the command line interface
|
||
that enables you to the following:
|
||
.P
|
||
You can parse and execute files by using parameter \-f followed by the name of the
|
||
.IR file
|
||
to be executed.
|
||
.LP
|
||
Using parameter \-r you can directly execute PHP
|
||
.IR code
|
||
simply as you would do inside a
|
||
.B \.php
|
||
file when using the
|
||
.B eval()
|
||
function.
|
||
.LP
|
||
It is also possible to process the standard input line by line using either
|
||
the parameter \-R or \-F. In this mode each separate input line causes the
|
||
.IR code
|
||
specified by \-R or the
|
||
.IR file
|
||
specified by \-F to be executed.
|
||
You can access the input line by \fB$argn\fP. While processing the input lines
|
||
.B $argi
|
||
contains the number of the actual line being processed. Further more
|
||
the paramters \-B and \-E can be used to execute
|
||
.IR code
|
||
(see \-r) before and
|
||
after all input lines have been processed respectively.
|
||
.LP
|
||
If none of \-r \-f \-B \-R \-F or \-E is present but a single parameter is given
|
||
then this parameter is taken as the filename to parse and execute (same as
|
||
with \-f). If no parameter is present then the standard input is read and
|
||
executed.
|
||
.SH OPTIONS
|
||
.TP 15
|
||
.PD 0
|
||
.B \-\-interactive
|
||
.TP
|
||
.PD 1
|
||
.B \-a
|
||
Run interactively
|
||
.TP
|
||
.PD 0
|
||
.B \-\-php\-ini \fIpath\fP|\fIfile\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-c \fIpath\fP|\fIfile\fP
|
||
Look for
|
||
.B php.ini
|
||
file in the directory
|
||
.IR path
|
||
or use the specified
|
||
.IR file
|
||
.TP
|
||
.PD 0
|
||
.B \-\-no\-php\-ini
|
||
.TP
|
||
.PD 1
|
||
.B \-n
|
||
No
|
||
.B php.ini
|
||
file will be used
|
||
.TP
|
||
.PD 0
|
||
.B \-\-define \fIfoo\fP[=\fIbar\fP]
|
||
.TP
|
||
.PD 1
|
||
.B \-d \fIfoo\fP[=\fIbar\fP]
|
||
Define INI entry
|
||
.IR foo
|
||
with value
|
||
.IR bar
|
||
.TP
|
||
.B \-e
|
||
Generate extended information for debugger/profiler
|
||
.TP
|
||
.PD 0
|
||
.B \-\-file \fIfile\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-f \fIfile\fP
|
||
Parse and execute
|
||
.IR file
|
||
.TP
|
||
.PD 0
|
||
.B \-\-global \fIname\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-g \fIname\fP
|
||
Make variable
|
||
.IR name
|
||
global in script.
|
||
.TP
|
||
.PD 0
|
||
.B \-\-help
|
||
.TP
|
||
.PD 1
|
||
.B \-h
|
||
This help
|
||
.TP
|
||
.PD 0
|
||
.B \-\-hide\-args
|
||
.TP
|
||
.PD 1
|
||
.B \-H
|
||
Hide script name (\fIfile\fP) and parameters (\fIargs\.\.\.\fP) from external
|
||
tools. For example you may want to use this when a php script is started as
|
||
a daemon and the command line contains sensitive data such as passwords.
|
||
.TP
|
||
.PD 0
|
||
.B \-\-info
|
||
.TP
|
||
.PD 1
|
||
.B \-i
|
||
PHP information and configuration
|
||
.TP
|
||
.PD 0
|
||
.B \-\-syntax\-check
|
||
.TP
|
||
.PD 1
|
||
.B \-l
|
||
Syntax check only (lint)
|
||
.TP
|
||
.PD 0
|
||
.B \-\-modules
|
||
.TP
|
||
.PD 1
|
||
.B \-m
|
||
Show compiled in modules
|
||
.TP
|
||
.PD 0
|
||
.B \-\-run \fIcode\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-r \fIcode\fP
|
||
Run PHP
|
||
.IR code
|
||
without using script tags
|
||
.B '<?..?>'
|
||
.TP
|
||
.PD 0
|
||
.B \-\-process\-begin \fIcode\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-B \fIcode\fP
|
||
Run PHP
|
||
.IR code
|
||
before processing input lines
|
||
.TP
|
||
.PD 0
|
||
.B \-\-process\-code \fIcode\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-R \fIcode\fP
|
||
Run PHP
|
||
.IR code
|
||
for every input line
|
||
.TP
|
||
.PD 0
|
||
.B \-\-process\-file \fIfile\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-F \fIfile\fP
|
||
Parse and execute
|
||
.IR file
|
||
for every input line
|
||
.TP
|
||
.PD 0
|
||
.B \-\-process\-end \fIcode\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-E \fIcode\fP
|
||
Run PHP
|
||
.IR code
|
||
after processing all input lines
|
||
.TP
|
||
.PD 0
|
||
.B \-\-syntax\-highlight
|
||
.TP
|
||
.PD 1
|
||
.B \-s
|
||
Display colour syntax highlighted source
|
||
.TP
|
||
.PD 0
|
||
.B \-\-version
|
||
.TP
|
||
.PD 1
|
||
.B \-v
|
||
Version number
|
||
.TP
|
||
.PD 0
|
||
.B \-\-stripped
|
||
.TP
|
||
.PD 1
|
||
.B \-w
|
||
Display source with stripped comments and whitespace
|
||
.TP
|
||
.PD 0
|
||
.B \-\-zend\-extension \fIfile\fP
|
||
.TP
|
||
.PD 1
|
||
.B \-z \fIfile\fP
|
||
Load Zend extension
|
||
.IR file
|
||
.TP
|
||
.IR args.\|.\|.
|
||
Arguments passed to script. Use
|
||
.B '\-\-'
|
||
.IR args
|
||
when first argument starts with
|
||
.B '\-'
|
||
or script is read from stdin
|
||
.SH FILES
|
||
.TP 15
|
||
.B php\-cli.ini
|
||
The configuration file for the CLI version of PHP.
|
||
.TP
|
||
.B php.ini
|
||
The standard configuration file will only be used when
|
||
.B php\-cli.ini
|
||
cannot not be found.
|
||
.SH EXAMPLES
|
||
.TP 5
|
||
\fIphp -r 'echo "Hello World\\n";'\fP
|
||
This command simply writes the text "Hello World" to stabdard out.
|
||
.TP
|
||
\fIphp \-r 'print_r(gd_info());'\fP
|
||
This shows the configuration of your gd extension. You can use this
|
||
to easily check which imag formats you can use. If you have any
|
||
dynamic modules you may want to use the same ini file that php uses
|
||
when executed from your webserver. There are more extensions which
|
||
have such a function. For dba use:
|
||
.RS
|
||
\fIphp \-r 'print_r(dba_handlers(1));'\fP
|
||
.RE
|
||
.TP
|
||
\fIphp \-R'echo strip_tags($argn)."\\n";\fP
|
||
This PHP command strips off the HTML tags line by line and outputs the
|
||
result. To see how it works you can first look at the following PHP command '
|
||
\fIphp \-d html_errors=1 \-i\fP' which uses PHP to output HTML formatted
|
||
configuration information. If you then combine those two
|
||
\'\fIphp \.\.\.|php \.\.\.\fP\' you\'ll see what happens.
|
||
.TP
|
||
\fIphp \-E 'echo "Lines: $argi\\n";'\fP
|
||
Using this PHP command you can count the lines being input.
|
||
.TP
|
||
\fIphp \-R '@$l+=count(file($argn));' \-E 'echo "Lines:$l\\n";'\fP
|
||
In this example PHP expects each input line beeing a file. It counts all lines
|
||
of the files specified by each input line and shows the summarized result.
|
||
You may combine this with tools like find and change the php scriptlet.
|
||
.TP
|
||
\fIphp \-R 'echo "$argn\\n"; fgets(STDIN);'\fP
|
||
Since you have access to STDIN from within \-B \-R \-F and \-E you can skip
|
||
certain input lines with your code. But note that in such cases $argi only
|
||
counts the lines being processed by php itself. Having read this you will
|
||
guess what the above program does: skipping every second input line.
|
||
.SH TIPS
|
||
You can use a shebang line to automatically invoke php
|
||
from scripts. Only the CLI version of PHP will ignore
|
||
such a first line as shown below:
|
||
.P
|
||
.PD 0
|
||
.RS
|
||
#!/bin/php
|
||
.P
|
||
<?php
|
||
.P
|
||
// your script
|
||
.P
|
||
?>
|
||
.RE
|
||
.PD 1
|
||
.P
|
||
.SH SEE ALSO
|
||
For a more or less complete description of PHP look here:
|
||
.PD 0
|
||
.P
|
||
.B http://www.php.net/manual/
|
||
.PD 1
|
||
.P
|
||
A nice introduction to PHP by Stig S<>ther Bakken can be found here:
|
||
.PD 0
|
||
.P
|
||
.B http://www.zend.com/zend/art/intro.php
|
||
.PD 1
|
||
.SH BUGS
|
||
You can view the list of known bugs or add any new bug you
|
||
found here:
|
||
.PD 0
|
||
.P
|
||
.B http://bugs.php.net
|
||
.PD 1
|
||
.SH AUTHORS
|
||
The PHP Group: Thies C. Arntzen, Stig Bakken, Andi Gutmans, Rasmus Lerdorf, Sam Ruby, Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski.
|
||
.P
|
||
Additional work for the CLI sapi was done by Edin Kadribasic and Marcus Boerger.
|
||
.P
|
||
A List of active developers can be found here:
|
||
.PD 0
|
||
.P
|
||
.B http://www.php.net/credits.php
|
||
.PD 1
|
||
.P
|
||
And last but not least PHP was developed with the help of a huge amount of
|
||
contributors all around the world.
|
||
.SH VERSION INFORMATION
|
||
This manpage describes \fBphp\fP, version @PHP_VERSION@.
|
||
.SH COPYRIGHT
|
||
Copyright \(co 1997\-2003 The PHP Group
|
||
.LP
|
||
This source file is subject to version 3.0 of the PHP license,
|
||
that is bundled with this package in the file LICENSE, and is
|
||
available at through the world-wide-web at
|
||
.PD 0
|
||
.P
|
||
.B http://www.php.net/license/3_0.txt
|
||
.PD 1
|
||
.P
|
||
If you did not receive a copy of the PHP license and are unable to
|
||
obtain it through the world-wide-web, please send a note to
|
||
.B license@php.net
|
||
so we can mail you a copy immediately.
|