PHP的命令行命令使用指南


Posted in PHP onAugust 18, 2015

 当用户打开php页面时,服务端便执行PHP的命令并将执行结果发送至用户的浏览器中,这类似于ASP和CoildFusion,PHP可以运行在WINDOWS和多种版本的UNIX上。除了能够操作您的页面外,PHP还能发送HTTP的标题。

你可以设置cookie,管理数字签名和重定向用户,而且它提供了极好的连通性到其它数据库(还有ODBC),集成各种 外部库来做用PDF文档解析XML的任何事情。那你还知道可以用php的强大功能做点别的东西吗? 在以独立的cgi方式运行时,需要一个php可执行程序,他有很多命令行参数的,有些可以用作很好玩的用途,下面是全部的php命令行参数,其中[]表示 可有可无的,<>表是一定要的。

用法 php [-q] [-h] [-s] [-v] [-i] [-f ] | { [args...]} -q 安静模式。不输出HTTP头。
 -s 将php程序文件用转化为彩色格式的HTML(比如保留字用绿色,函数和变量为蓝色,注释为黄色而字串则是红色等等。

-f 读入并解释指定的文件。

-c 在中读入php.ini文件

-a 交互式运行

-d foo[=bar] 定义ini中的输入项 foo 的值为 bar

-e 输出额外信息以便调试和性能分析

-z 调入Zend扩展文件

-i php的相关信息

-h help本身。

1.用php -q 文件名.php 方式把php程序当shell程序来用,

2.用 -s把自己的php程序html化。这样是不是很省心?

3.利用php的odbc功能可以在shell命令中对数据库进行操作。

几个常用命令
1、  查看php的版本、配置

在命令行中输入php ?v 即可查看当前php的版本。

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

 

其他的选项有: ?m、-i。笔者在这里就不给出列子了。

-m 会显示当前php加载的有效模块。

-i 则输出无html格式的phpinfo。

使用 ?ini 选项可以输出当前php加载ini配置文件的数量、路径信息。

php--ini-in-shell

 
2、  在命令行中运行php程序

从命令行运行php非常简单。但有些注意事项需要各位了解下。诸如$_SESSION之类的服务器变量是无法在命令行中使用的,其他代码的运行则和web服务器中完全一样^_^。

<?php 
 echo “运行php命令行echo”; 
 ?>

把上面的代码另存为hello.php 。在命令行中敲入 php ?f hello.php。显示结果如下:

运行php命令行echo

在命令行中执行php文件的好处之一就是可以通过脚本实现一些计划任务的执行。而毋须通过web服务器^_^。

当然,我们也可以直接在php中调试代码:输入php ?r 指令,会出现一个”>”符号。这表示已经进入到php的shell中,可以直接写代码,并执行。

-bash-3.2$ php -r ' 
 > for($i=0;$i<2;$i++){ 
 > echo "Number: {$i}\n"; 
 > } 
 > ' 
 Number: 0 
 Number: 1

 

还可以使用php ?a 命令打开交互模式,输入一行代码,php会实时输出结果。

 
3、  检测php语法、高亮输出

不用执行代码,我们可以在命令行下检测php文件的语法错误。

-bash-3.2$ php -l hello.php

    No syntax errors detected in hello.php 

 

程序员经常会需要将php代码高亮原样输出,使用php ?s 即可

-bash-3.2$ php -s hello.php
<code><span style="color: #000000"> 
 <span style="color: #0000BB"><?php<br /></span> 
 <span style="color: #007700">echo </span> 
 <span style="color: #DD0000">'ddd'</span> 
 <span style="color: #007700">;<br /></span><span 
 style="color: #0000BB">?><br /></span> 
 </span> 


 
4、查看php手册

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

-bash-3.2$ php --rf strip_tags
Function [ <internal:standard> function strip_tags ] { 
    
  - Parameters [2] { 
  Parameter #0 [ <required> $str ] 
  Parameter #1 [ <optional> $allowable_tags ] 
  } 
  }
PHP 相关文章推荐
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
Sep 05 PHP
php 中英文语言转换类
Sep 07 PHP
php中3des加密代码(完全与.net中的兼容)
Aug 02 PHP
说说PHP的autoLoad自动加载机制
Sep 27 PHP
解析isset与is_null的区别
Aug 09 PHP
PHP函数http_build_query使用详解
Aug 20 PHP
php常用字符串比较函数实例汇总
Nov 24 PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
Mar 13 PHP
php递归遍历多维数组的方法
Apr 18 PHP
php自定义类fsocket模拟post或get请求的方法
Jul 31 PHP
PHP基于SMTP协议实现邮件发送实例代码
Apr 27 PHP
php面向对象程序设计中self与static的区别分析
May 21 PHP
使用PHP生成图片的缩略图的方法
Aug 18 #PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
Aug 18 #PHP
详解PHP中的mb_detect_encoding函数使用方法
Aug 18 #PHP
深入讲解PHP Session及如何保持其不过期的方法
Aug 18 #PHP
php微信公众平台开发之获取用户基本信息
Aug 17 #PHP
PHP添加图片水印、压缩、剪切的封装类
Aug 17 #PHP
php中switch语句用法详解
Aug 17 #PHP
You might like
收音机术语解释
2021/03/01 无线电
PHP编码规范的深入探讨
2013/06/06 PHP
php ci框架验证码实例分析
2013/06/26 PHP
常见的四种POST 提交数据方式(小总结)
2015/10/08 PHP
PHP连接MySQL进行增、删、改、查操作
2017/02/19 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
Yii框架where查询用法实例分析
2019/10/22 PHP
Extjs学习笔记之二 初识Extjs之Form
2010/01/07 Javascript
jquery自定义下拉列表示例
2014/04/25 Javascript
js函数与php函数的区别实例浅析
2015/01/12 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
javascript中递归的两种写法
2017/01/17 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
Jquery把获取到的input值转换成json
2017/05/15 jQuery
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
angularJs 表格添加删除修改查询方法
2018/02/27 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
vue 实现移动端键盘搜索事件监听
2019/11/06 Javascript
[01:06]DOTA2隆重推出2016冬季勇士令状 内含上海特级锦标赛互动指南
2016/02/17 DOTA
Python中函数参数设置及使用的学习笔记
2016/05/03 Python
Python socket套接字实现C/S模式远程命令执行功能案例
2018/07/06 Python
在python中只选取列表中某一纵列的方法
2018/11/28 Python
Python代码打开本地.mp4格式文件的方法
2019/01/03 Python
python接口自动化(十六)--参数关联接口后传(详解)
2019/04/16 Python
python3利用Socket实现通信的方法示例
2019/05/06 Python
python  logging日志打印过程解析
2019/10/22 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
学院书画协会部门职责
2013/11/28 职场文书
个人教师自我评价范文
2013/12/02 职场文书
中国文明网签名寄语
2014/01/18 职场文书
MySQL开启事务的方式
2021/06/26 MySQL
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
python中__slots__节约内存的具体做法
2021/07/04 Python
HTML中的表格元素介绍
2022/02/28 HTML / CSS
Python如何利用pandas读取csv数据并绘图
2022/07/07 Python