您的位置:首页 > 运维架构 > Linux

php的linux定时任务调用第三方库的函数

2012-07-27 09:57 225 查看
最近在工作中要用到linux的定时任务执行一个php文件,在这个php文件里要用到一个我自己编译的第三方库的函数。

我先是直接在定时任务里用php解释器执行这个php文件,但发现此时第三方库的函数不存在。然后我在浏览器里输入这个php文件,但发现在浏览器里这个第三方库的函数是存在的。我试了很久都没找出原因,为什么在定时任务里这个第三方库的函数不存在。

最后我用了其它方法解决。现在定时任务里执行PHP文件A,在A文件里调用fsockopen打开mq_get.php

<?php
OpenSocket();
//打开sokcet
function OpenSocket(){
$url="http://localhost:80/mq_get.php";
$url_info = parse_url($url);
$header = "POST $url HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: 6\r\n\r\n";
$fp = fsockopen($url_info["host"],$url_info["port"], $errno = "111", $errstr = "222" ,1);
if(!$fp){
//echo ('--ERROR--'.$url.' can not open');
}else{
fputs($fp, $header);
}
fclose($fp);
}
?>

然后在mq_get.php里执行第三方库的函数,此时这个函数就可以执行了。

问题是解决了,但我不知道在定时任务里直接用php解释器执行第三方库的函数会不存在
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: