黑客集中营首页|黑客新闻|黑客文章|黑营动画|黑客软件|黑客论坛 |黑客商城 |黑营招聘
热门搜索:杀毒 安全工具 黑客集中营 安全 黑客
 您现在的位置: 黑客集中营 >> 技术中心 >> 网络编程 >> 正文
将PHP作为Shell脚本语言使用
作者:佚名    文章来源:不详    点击数:    更新时间:2008-6-14          

  我们都知道,PHP是一种非常好的动态页开发语言(速度飞快,开发周期短……)。但是只有很少数的人意识到PHP也可以很好的作为编写Shell脚本的语言,当PHP作为编写Shell脚本的语言时,他并没有Perl或者Bash那么强大,但是他却有着很好的优势,特别是对于我这种熟悉PHP但是不怎么熟悉Perl的人。

  要使用PHP作为Shell脚本语言,你必须将PHP作为二进制的CGI编译,而不是Apache模式;编译成为二进制CGI模式运行的PHP有一些安全性的问题,关于解决的方法可以参见PHP手册(http://www.php.net)。

  一开始你可能会对于编写Shell脚本感到不适应,但是会慢慢好起来的:将PHP作为一般的动态页编写语言和作为Shell脚本语言的唯一不同就在于一个Shell脚本需要在第一行生命解释本脚本的程序路径:

  #!/usr/local/bin/php -q


  我们在PHP执行文件后面加入了参数“-1”,这样子PHP就不会输出HTTPHeader(如果仍需要作为Web的动态页,那么你需要自己使用header函数输出HTTPHeader)。当然,在Shell脚本的里面你还是需要使用PHP的开始和结束标记:

  <?php 代码 ?>


  现在让我们看一个例子,以便于更好的了解用PHP作为Shell脚本语言的使用:

  #!/usr/local/bin/php -q
  <?php
  print("Hello, world!\n");
  ?>


  上面这个程序会简单的输出“Hello, world!”到显示器上。

一、传递Shell脚本运行参数给PHP:

  作为一个Shell脚本,经常会在运行程序时候加入一些参数,PHP作为Shell脚本时有一个内嵌的数组“$argv”,使用“$argv”数组可以很方便的读取Shell脚本运行时候的参数(“$argv[1]”对应的是第一个参数,“$argv[2]”对应的是第二个参数,依此类推)。比如下面这个程序:

  #!/usr/local/bin/php -q
  <?php
  $first_name = $argv[1];
  $last_name = $argv[2];
  printf("Hello, %s %s! How are you today?\n", $first_name, $last_name);
  ?>


  上面的代码在运行的时候需要两个参数,分别是姓和名,比如这样子运行:

  [dbrogdon@artemis dbrogdon]$ scriptname.ph Darrell Brogdon


  Shell脚本在显示器上面会输出:

  Hello, Darrell Brogdon! How are you today?
  [dbrogdon@artemis dbrogdon]$


  在PHP作为动态网页编写语言的时候也含有“$argv”这个数组,不过和这里有一些不同:当PHP作为Shell脚本语言的时候“$argv[0]”对应的是脚本的文件名,而当用于动态页编写的时候,“$argv[1]”对应的是QueryString的第一个参数。

本新闻共2页,当前在第1页  1  2  


『关闭该页』 『打印该页』

  • 上一篇文章:
  • 责任编辑:封情
  • 下一篇文章:
  • 热门文章
    普通文章Windows 2K 微软最成功
    普通文章企业防病毒策略如何做
    普通文章网络安全特警2005评测
    普通文章网吧生存手册:10秒钟
    普通文章资深Linux程序员的开发
    普通文章用组策略限制软件使用
    普通文章浅谈网络监控软件的部
    普通文章入侵检测及网络安全发
    普通文章谈谈针对Linux的病毒起
    普通文章普遍存在的在线安全四
    相关文章
    建立PHP的本地调试环境
    php通用检测函数集(1)
    php通用检测函数集(2)
    php通用检测函数集(3)
    php通用检测函数集(4)
    php通用检测函数集(5)
    使用php通过smtp发送邮件
    使用PHP维护文件系统
    PHP文件上传的具体思路及
    php优化及高效提速问题小
    用php实现qq挂机
    PHPbb2.0.15远程命令执行
    PHP:404错误陷阱并email
    一个简单的php在线端口扫
    Php高手带路--问题汇总解
    PHP/MySQL三日通-第一天
    PHP/MySQL三日通-第一天
    PHP/MySQL三日通-第二天
    PHP/MySQL三日通-第二天
    PHP/MySQL三日通-第二天
    关于我们 | 加入会员| 投稿方法 | 友情连接 | 网站地图 | 黑营论坛 | 黑营招聘
    加入会员咨询QQ:66647470 合作QQ:197430910 投稿:66647470 mail:85soft#163.com(#改@)
    版权:2003-2008HACK52.COM 集中营宣言普及黑客安全意识!打造顶尖黑客安全资讯网!
    浙ICP备06050453号