在url上输入php命令,PHP的命令行操作

PHP作为一门web开发语言,通常情况下我们都是在Web Server中运行PHP,使用浏览器访问,因此很少关注其命令行操作以及相关参数的使用,但是,特别是在类Unix操作系统上,PHP可以作为一门脚本语言执行与shell类似的处理任务。

在文件脚本中,可以通过php_sapi_name()函数获取该脚本文件的运行环境,如在命令行下该函数返回'cli',在浏览器该函数返回"cgi-fcgi"(不同的环境配置可能显示不同)

-a:以交互式shell模式运行,可以执行一些简单的任务,而不需要新建一个php文件。

-c:指定php.ini文件所在的目录

-n:指定不使用php.ini文件

-d foo[=bar]:定义一个INI实体,key为foo,value为'bar'

-e:为调试和分析生成扩展信息

-f:解释和执行文件

-h:打印帮助

-i:显示PHP的基本信息

-l:进行语法检查 (lint)

-m:显示编译到内核的模块

-r:运行PHP代码,不需要使用标签<?php.. ?>

-t:指定用于内建web服务器的文档根目录(默认当前目录为根目录)

-s:输出HTML语法高亮的源码

-v:输出PHP的版本号

-w:输出去掉注释和空格的源码

-z:载入Zend扩展文件

-B:在处理输入之前先执行PHP代码

-E:处理完所有输入行后运行PHP

-F:对每个输入行进行分析和执行

-H:隐藏外部工具传递的任何参数。

-R:对输入的每一行作为PHP代码运行

-S : : 运行内建的web服务器.

--ini:显示PHP的配置文件名

–ini:显示当前PHP的配置文件信息

–info:显示php的信息(显示函数phpinfo()全部的输出信息,比较乱,一般配合管道符和grep命令使用)

--rf:显示关于函数的信息

--rc:显示关于类的信息

--re:显示关于扩展的信息

--rz:显示关于Zend扩展的信息

--ri:显示扩展的配置信息

在web程序中,我们可以通过改变url的参数,为PHP环境提供不同的输入,但是在命令行脚本程序中如何获取外部的输入呢?在PHP中,提供了两个全局变量$argv和$argc用于获取命令行输入参数(这两个全局变量仅在命令行执行时有效)。

$argv是一个数组,包含了提供的参数,第一个参数总是脚本文件名称

$argc是$argv数组元素的数量

如:现有一个demo.php文件

echo '命令行参数个数:'.$argc."\n";

var_dump($argv);

}

在命令行下执行该脚本

php -f D:\wwwroot\test\11.php one two

命令行参数个数:3

array(3) {

[0]=>

string(6) "D:\wwwroot\test\11.php"

[1]=>

string(3) "one"

[2]=>

string(3) "two"

}

需要注意的是,如果提供的第一个参数是以-开头的话,需要在前面增加–,以告诉php后面是提供给脚本的参数,如php -f D:\wwwroot\test\11.php - -one two

最后编辑:2020-03-04作者:qingheluo

5aea90233e4bbc88135a027c2de2596a.png

这个作者貌似有点懒,什么都没有留下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值