以前没写过,有些疑问还不清楚1、能否像写普通PHP代码一样写SHELL,语法、函数、数据库操作等代码编写是否都一样?2、如果PHP语法能直接用来写SHELL,那么我要写一个特定时间进行特定操作的程序,是否可以这样写:
if(date('Y-M-d H:i:s') == '2009-12-22 12:00:00'){
//完成特定操作的程序
}
然后运行该shell,到了指定时间该操作是否就自动运行了呢?3、目前不用考虑程序输出什么信息的问题,我只需要做一些数据库、邮件发送的操作4、shell能否调用其它php页面代码,比如数据库链接文件、phpmailer类等能在普通PHP页面中使用的代码?5、shell代码页怎么调用?需要存放至特殊的目录下吗?还是直接和网站代码放一起也可以?
if(date('Y-M-d H:i:s') == '2009-12-22 12:00:00'){
//完成特定操作的程序
}
然后运行该shell,到了指定时间该操作是否就自动运行了呢?3、目前不用考虑程序输出什么信息的问题,我只需要做一些数据库、邮件发送的操作4、shell能否调用其它php页面代码,比如数据库链接文件、phpmailer类等能在普通PHP页面中使用的代码?5、shell代码页怎么调用?需要存放至特殊的目录下吗?还是直接和网站代码放一起也可以?
这个SHELL该怎么写?a.php就是一个普通的PHP代码页。
如果能判断一下该页面是否已经被调用并运行着最好,比如12:00调动该页面,到12:05该页面的操作还未完成,则不调用,12:10分再次调用,发现已经完成了上一轮操作,继续调用该页面。(我想用SESSION应该能做到吧?)
b.调用 用 php a.php, 或者 文件里用 #!/usr/local/bin/php (根据你的php路径写) 然后直接运行
c.可以调用大部分函数,库/也可以include其它文件. 但是一些与web相关的东西在命令行是没有的,比如 $_SERVER,$_SESSION...等,web相关的函数当然也没意义
$_SESSION也不能用吗?既然是存储服务器端的为何不能用了?
我还指望通过$_SESSION来判断a.php是否被重复调用呢……因为这个页面可能执行时间会很长。我还想在a.php调用时先判断某$_SESSION变量是否赋值,未赋值才运行,否则直接退出。然后开始执行先赋值,执行完毕取消赋值……或者写个死循环吧,
while(1){
//操作
sleep(300);
}
然后用ajax异步提交到这个页面,让它一直运行下去,不知道可行不。我担心会死机