我有一个bash脚本,现在我需要将其转换成PHP作为CGI script.See我有一个bash线这样PHP相当于退出状态在bash
wget http://repo.domain/sources/latest_version.tar.gz > /dev/null 2>&1;
if [ $? != 0 ]
then
echo "Could not download file...";
exit 0;
fi
如果我运行wget
使用php system/exec
,是否有一种方法可以捕获退出状态,如在此脚本中使用$?
?我已阅读该文件下载可以使用file_put_contents()
在这里stackoverflow post这里。但我也关注allow_fopen_url Off
部分作为提到的意见之一。我想我需要一个更通用的解决方案,保持从bash到php的最小变化最小。
我怎样才能在这里看到退出状态?请提出任何提示?
PHP中加载外部文件的默认方法是使用[cURL](http://php.net/cURL)。永远不要使用'file_get_contents()'来访问不在你自己的服务器上的东西。这可能由于配置而中断。是的,你可以在PHP中获得执行shell命令的返回值。但这已经很好了[在PHP手册中描述](http://php.net/exec)。 – feeela 2014-12-04 10:32:31
是的,但是人们可以删除cURL吗?这就是为什么我认为坚持执行功能 – 2014-12-04 10:35:48
是的,人们也可以删除PHP。通过配置保护您的服务器或随机删除库是有区别的。在这种情况下,cURL只是程序运行所需的任何其他库的依赖关系。 – feeela 2014-12-04 10:39:01