如何在PHP中调用RScript脚本

由于某个原因,需要在PHP中调用R语音进行绘制图像。经过多方百度,目前大部分解决方案都是:利用PHP中的系统命令函数如exec,system,shell_exec等等来调用RScript脚本,常见的命令行有

  1. exec("RScript " . $your_script_dir . "$your_RScript_file " . $args);    // 里面有printf某个变量
    // echo ("RScript " . $your_script_dir . "$your_RScript_file " . $args);
  2. system("R --slave < " . $your_RScript_dir . "$your_RScript_file" . " --args " . $args); // 里面有printf某个变量
    // echo ("R --slave < " . $your_RScript_dir . "$your_RScript_file" . " --args " . $args);

接下来,我们满怀信心地去运行PHP的时候,会发现我们所执行系统命令返回的值是1,也就是失败。但是,我们拿echo出来的语句去cmd窗口执行,发现是可以printf出结果,并且也生成了我想要的图像。这是为什么呢?经过多方百度跟尝试,终于找到解决方案。供大家参考并欢迎大家如果有更好的方法,也在评论区中发文,大家共同努力进步。

 

一、简单看下失败的调用情况

这是我在PHP中调用的R脚本的语句,下面是在浏览器中调用的结果。

评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值