php 使用命令行自变量
php 使用命令行自变量
在命令行里输入程序参数来更改其运行方式是很常见的做法。你也可以对CLI程序这样做。PHP
CLI带有两个特殊的变量,专门用来达到这个目的:一个是$argv变量,它通过命令行把传递给PHP脚本的参数保存为单独的数组元素;另一个
是$argc变量,它用来保存$argv数组里元素的个数。
用PHP脚本编写一段读取$argv并处理它所含参数的代码是很简单的。试试列表B里的示例脚本,看看它是如何工作的:
列表B
<?php
print_r($argv);
?>
Run this script by passing it some arbitrary values, and check the output:
shell> /path/to/phptest.php chocolate 276 "killer tie, dude!"
Array
(
[0] => test.php
[1] => chocolate
[2] => 276
[3] => killer tie, dude!
)
正如你可以从输出的结果看到的,传递给test.php的值会自动地作为数组元素出现在$argv里。要注意的是,$argv的第一个自变量总是脚本自己的名称。
下面是一个更加复杂的例子(列表C):
列表C
<?php
// check for all required arguments
// first argument is always name of script!
if ($argc != 4) {
die("Usage: book.php <check-in-date> <num-nights> <room-type>
");
}
// remove first argument
array_shift($argv);
// get and use remaining arguments
$checkin = $argv[0];
$nights = $argv[1];
$type = $argv[2];
echo "You have requested a $type room for $nights nights, checking in on $checkin. Thank you for your order!
";
?>
下面是其用法的示例:
shell> /path/to/phpbook.php 21/05/2005 7 single
You have requested a single room for 7 nights, checking in on 21/05/2005. Thank you for your order!
在这里,脚本首先会检查$argc,以确保自变量的数量符合要求。它然后会从$argv里提取出每一个自变量,把它们打印输出到标准的输出设备上。
相关文档:
PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
PHP Session 变量
当您运行一个应用程序时,您会打开它,做些更改,然后关闭它。这很像一次会话。计算机清楚你是谁。它知道你何时启动应用程序,并在何时终止。但是在因特 ......
最近我真是头大矣,我的博客里居然一夜间变成了php和asp的斗争场,甚至变成了windows和linux的斗争场。真是意想不到的。
我本来无意挑起windows和linux之间的争端,而且也非常不想去挑这种争端。
话说,其实我本身对linux操作系统是没有什么坏印象的,虽然自己的电脑上没有装过linux,但是在同学的电脑上用过,觉得它挺好 ......
1.
error_reporting(E_ERROR | E_WARNING | E_PARSE); //报错级别
@set_time_limit(1000); //设置函数执行的最大时间
set_magic_quotes_runtime(0); //为了安全
define('IN_COMSENZ', TRUE);
define('ROOT_PATH', dirname(__FILE__).'/../');   ......
最近帮实验室完善一个CMS系统,现在已经进入尾声,借此机会简要记录一下实现的细节,以备所需。
本系统是个纯粹的在线内容管理系统,最主要的操作就是向数据库中添加、修改和删除数据,应该说实现起来很简单,不过正是因为简单,使得原有系统显得很难维护,简单类似的操作有20多个不同的页面,每个页面 ......
在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了:
一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法:
(1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可 ......