当前位置: 网学 > 编程文档 > PHP > 正文

PHP做Shell语言

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/17
下载{$ArticleTitle}原创论文样式
PHP访问数据库的内容请看相关的数据库函数和数据库的文档手册。


用PHP做FTP自动上载和下载脚本  

在PHP3就提供PHP的FTP的函数,用这些函数能够实现文件的自动上载和下载的功能。想要利用PHP提供的FTP函数,必须要在编译PHP时的configure指定参--with-ftp。下面是FTP的例子:

#!/usr/sbin/php -q

<?php

// set up basic connection

$conn_id = ftp_connect("$your_ftp_server");


// login with username and password

$login_result = ftp_login($conn_id, "$ftp_your_name", "$ftp_your_password");


// check connection

if ((!$conn_id) || (!$login_result)) {

echo "Ftp connection has failed!";

echo "Attempted to connect to $your_ftp_server ";

die;

} else {

echo "Connected to $ftp_server, for your";

}


// upload the file

$upload = ftp_put($conn_id, "$destination_file", "$source_file", FTP_BINARY);


// check upload status

if (!$upload) {

echo "Ftp upload has failed!";

} else {

echo "Uploaded $source_file to $your_ftp_server as $destination_file";

}


// close the FTP stream

ftp_quit($conn_id);

?>

显然利用PHP可以方便的进行网络的文件传输,没有必要写socket程序


用PHP处理命令行参数  

PHP和Perl的相似之处还在于它们们处理的参数的方法是一致的,它们提供变量数组和变量计数器:$ argv ,$ argc。下面的例子是一个打印命令行字串的例子和命令行求和。

test.php


#!/usr/sbin/php –q  

<?php

echo $argv; //注意$ argv 的第一个变量从1开始

?>

在命令行下执行:./test.php LegendSoftware

将打印LegendSoftware


test1.php


#!/usr/sbin/php –q

<?php

$sum=0;

for ($i=1;$i<=$argc;$i++)

$sum=$sum+$argv[$i];

echo $sum;

?>

执行 test1.php 1 2 3 4 5 回车,则会打印出 15。


在Console下进行交互  

许多的C程序员知道在Console下进行交互用scanf函数,PHP是为web而设计的语言,用户输入交互通过form中的变量。那么在Console下怎么进行交互呢?答案很简单,用fopen函数打开系统的标准输入设备进行读取。下面的程序实现了这个从标准输入设备上读取字串的功能:

#!/usr/sbin/php -q

<?

$fp=fopen("/dev/stdin","r");

echo “Please input a string:”

$inputstr=fgets($fp,100);

fclose($fp);

echo "This string is ";

echo $inputstr.”\n”;

?>  


其中的 fgets($fp,100) 是指从$fp句柄(也就是 "/dev/stdin")中读取出最多100个字节,执行这个程序会等待我们的输入,当我们输入完按下 enter 之后,程序会将我们的输入打印出来。

小结

通过上面的介绍,和本人的实践经验,PHP的功能非常的强大,不但对web的处理能力非常的强大,同时对脚本的处理能力也是非常的方便。

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号