Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 壳牌执行董事不';我不能在windows上正常工作_Php_R_Command Line_Exec_Shell Exec - Fatal编程技术网

Php 壳牌执行董事不';我不能在windows上正常工作

Php 壳牌执行董事不';我不能在windows上正常工作,php,r,command-line,exec,shell-exec,Php,R,Command Line,Exec,Shell Exec,在命令提示符下编写此脚本时,它工作正常: R CMD BATCH test.R 但是,当我试图在windows上用php执行此代码时,使用: shell_exec(R CMD BATCH test.R) 它给了我一个错误:“库中的错误(光栅):未找到包‘光栅’”这没有意义,因为它在unix上工作 一些可能性: 未安装光栅软件包 调用shell_exec时,PHP路径设置了不同的环境变量,因此它没有加载正确的libs(请尝试设置R_libs来修复它) 尝试使用r的绝对路径而不是相对路径 对于上

在命令提示符下编写此脚本时,它工作正常:

R CMD BATCH test.R
但是,当我试图在windows上用php执行此代码时,使用:

shell_exec(R CMD BATCH test.R)
它给了我一个错误:“库中的错误(光栅):未找到包‘光栅’”
这没有意义,因为它在unix上工作

一些可能性:

  • 未安装光栅软件包

  • 调用shell_exec时,PHP路径设置了不同的环境变量,因此它没有加载正确的libs(请尝试设置R_libs来修复它)

  • 尝试使用r的绝对路径而不是相对路径

  • 对于上述自由库:

    默认情况下,R_LIBS是未设置的,R_LIBS_USER被设置为R x.y.z主目录的目录“R/R.version$platform library/x.y”(对于CRAN OS x构建,或“library/R/x.y/library”)

    他们的例子如下:


    这个错误是由r引起的?安装r的光栅库。该库已安装,当我在命令PROMPTRY设置r的任何路径信息中键入它时,我的脚本可以工作。这听起来像是一个路径问题。如果这是因为库的原因,那么如果我不使用phphow来解决这个问题,这是行不通的:尝试创建一个包含要运行的命令的批处理文件,然后使用php的shell_exec来调用批处理文件——事实上你是真的!!非常感谢:)我确实安装了这个库,虽然shell_exec可以运行,
    "path_to_R\bin\x64\Rgui.exe" HOME=p:/ R_LIBS=p:/myRlib