Introduction to php command line usage

WBOY
Release: 2016-08-08 09:30:12
Original
1181 people have browsed it

Php is a very popular web server-side scripting language. In fact, php can not only play an important role in the web server. It can also be executed from the command line.

In this article, the author introduces to you how to use php in the command line.

1. Check the version and configuration of php

Enter php -v on the command line to view the current php version.

Java code

  1. PHP 5.2.17(cli) (built: Feb 2 2011 11:19:21)
  2. Copyright (c) 1997-2010 The PHP Group
  3. Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
  4. with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
  5. with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

Other options are: –m, -i. The author will not give any examples here.

-m will display the valid modules currently loaded by php.

-i outputs phpinfo without html format.

Use the –ini option to output the number and path information of the ini configuration files currently loaded by php.

2. Run the php program in the command line

Running php from the command line is very easy. But there are some precautions that you need to understand. Server variables such as $_SESSION cannot be used in the command line, and other code runs exactly the same as in the web server^_^.

Php code

  1. echo “Run php command lineecho”;
  2. ?>

Save the above code as hello.php. Type php –f hello.php at the command line. The results are displayed as follows:

One of the benefits of executing php files in the command line is that you can execute some scheduled tasks through scripts. No need to go through the web server^_^.

Of course, we can also debug the code directly in php: enter the php -r command, and a ">" symbol will appear. This means that you have entered the PHP shell and can write code directly and execute it.

Java code

  1. -bash-3.2$ php -r '
  2. > for($i=0;$i<2;$i++){
  3. > echo "Number: {$i}n";
  4. > }
  5. > '
  6. Number: 0
  7. Number: 1

You can also use the php -a command to open the interactive mode, enter a line of code, and php will output the results in real time.

3. Detect PHP syntax and highlight output

Without executing code, we can detect syntax errors in php files from the command line.

Java code

  1. -bash-3.2$ php -l hello.php
  2. No syntax errors detected in hello.php

Programmers often need to highlight the php code and output it as it is, just use php –s

Java code

  1. -bash-3.2$ php -s hello.php  
  2. "color: #000000">  
  3. "color: #0000BB"><?php
      
  4. "color: #007700">echo   
  5. "color: #DD0000">'ddd'  
  6. "color: #007700">;
  7. style="color: #0000BB">?>
      
  8.   

在浏览器中的显示效果

4、查看php手册

从php5.1.2开始,程序员们可以在php命令行下查看手册了,输入php –rf function。会打印出该函数的语法简介

Java代码  

  1. -bash-3.2$ php --rf strip_tags  
  2. Function [  function strip_tags ] {  
  3.    
  4. - Parameters [2] {  
  5. Parameter #0 [  $str ]  
  6. Parameter #1 [  $allowable_tags ]  
  7. }  
  8. }  

如果要查看类使用 –rc;查看扩展使用 –re。

Php命令行的使用方法介绍到这里就结束了。Enjoy It!

来源:http://www.cnphp.info/php-command-line-useage-intro.html

更多:http://www.tutorialspoint.com/unix_commands/php.htm

php - Unix, Linux Command

NAME

php - PHP Command Line Interface ’CLI’

SYNOPSIS

php [options] [ -f ] file [[--] args...]

php [options] -r code [[--] args...]

php [options] [-B code] -R code [-E code] [[--] args...]

php [options] [-B code] -F file [-E code] [[--] args...]

php [options] -- [ args...]

php [options] -a

DESCRIPTION

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 do the following:

You can parse and execute files by using parameter -f followed by the name of the file to be executed.

Using parameter -r you can directly execute PHP code simply as you would do inside a .php file when using theeval() function.

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 code specified by -R or the file specified by -F to be executed. You can access the input line by $argn. While processing the input lines $argi contains the number of the actual line being processed. Further more the parameters -B and -E can be used to execute code (see -r) before and after all input lines have been processed respectively. Notice that the input is read from STDIN and therefore reading from STDIN explicitly changes the next input line or skips input lines.

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.

OPTIONS

Tag Description

--interactive 
-a
Run PHP interactively. This lets you enter snippets of PHP code that directly get executed. When readline support is enabled you can edit the lines and also have history support.
--bindpathaddress:port|port
-baddress:port|port
  Bind Path for external FASTCGI Server mode (CGI only).
--no-chdir 
-C
Do not chdir to the script’s directory (CGI only).
--no-header 
-q
Quiet-mode. Suppress HTTP header output (CGI only).
--timing count 
-T count
Measure execution time of script repeated count times (CGI only).
--php-inipath|file 
-c path|file
Look for php.ini file in the directory path or use the specified file
--no-php-ini 
-n
No php.ini file will be used
--definefoo[=bar
-d foo[=bar]
  Define INI entry foo with value bar
-e Generate extended information for debugger/profiler
--file file 
-f file
Parse and execute file
--global name 
-g name
Make variable name global in script.
--help 
-h
This help
--hide-args 
-H
Hide script name (file) and parameters (args...) 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.
--info 
-i
PHP information and configuration
--syntax-check 
-l
Syntax check only (lint)
--modules 
-m
Show compiled in modules
--run code 
-r code
Run PHP code without using script tags ’
--process-begin code 
-B code
  Run PHP code before processing input lines
--process-codecode 
-R code
  Run PHP code for every input line
--process-filefile 
-F file
  Parse and execute file for every input line
--process-endcode 
-E code
Run PHP code after processing all input lines
--syntax-highlight 
-s
Output HTML syntax highlighted source
--version 
-v
Version number
--stripped 
-w
Output source with stripped comments and whitespace
--zend-extension file 
-z file
  Load Zend extension file
args... Arguments passed to script. Use ’--’ args when first argument starts with ’-’ or script is read from stdin
--rfunction name
--rf name Shows information about function name
--rclass name
--rc name Shows information about class name
--rextension name
--re name Shows information about extension name
--rextinfo name
--ri name Shows configuration for extension name
--ini Show configuration file names

FILES

Tag Description

php-cli.ini The configuration file for the CLI version of PHP.
php.ini The standard configuration file will only be used when php-cli.ini cannot be found.

EXAMPLES

Tag Description

php -r ’echo "Hello Worldn";’
  This command simply writes the text "Hello World" to standard out.
php -r ’print_r(gd_info());’
  This shows the configuration of your gd extension. You can use this to easily check which image 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:php -r ’print_r(dba_handlers(1));’
php -R ’echo strip_tags($argn)."n";’
  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 'php -d html_errors=1 -i' which uses PHP to output HTML formatted configuration information. If you then combine those two 'php ...|php ...' you’ll see what happens.
php -E ’echo "Lines: $argin";’
  Using this PHP command you can count the lines being input.
php -R ’@$l+=count(file($argn));’ -E ’echo "Lines:$ln";’
  In this example PHP expects each input line being 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.
php -R ’echo "$argnn"; fgets(STDIN);’
  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.

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:

#!/bin/php

// your script

?>

SEE ALSO

http://www.php.net/manual/

BUGS

You can view the list of known bugs or report any new bug you found at:

http://bugs.php.net

AUTHORS

The PHP Group: Thies C. Arntzen, Stig Bakken, Andi Gutmans, Rasmus Lerdorf, Sam Ruby, Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski.

Additional work for the CLI sapi was done by Edin Kadribasic, Marcus Boerger and Johannes Schlueter.

A List of active developers can be found here:

http://www.php.net/credits.php

And last but not least PHP was developed with the help of a huge amount of contributors all around the world.

VERSION INFORMATION

This manpage describes php, version 5.2.17.

COPYRIGHT

Copyright © 1997-2010 The PHP Group

以上就介绍了php命令行用法简介,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template