• Windows环境下 PHP调用R脚本


    写在前面的:

      由于是windows平台实现的,只要保证脚本命令能在cmd控制台运行,则可以在php中利用system()实现。

      注意事项:

    (1).保证system的路径中无汉字和空格 !!  (亲身试验:路径中如果有空格,就得不到结果!!)

    (2).事先要配置R语言环境,在windows环境变量path中添加路径C:RR-3.4.0in

    程序如下:

    R    路径:C:RR-3.4.0inR.exe

    test1.R     路径:C:Rwork est1.R

    print(123)
    

    index.php

    <?php
    //R
    echo "</br>Hello R!</br>";
    $se=shell_exec('C:RR-3.4.0inR.exe  --vanilla <C:Rwork	est1.R');  
    //echo $se;
    if($se==0){  
        sleep(2);  
        echo "分析成功 ".$se.'</br>';
    }else{  
        echo "分析失败 ".$se;  
    }  
    ?>
    

     输出:

    Hello R!
    分析成功 R version 3.4.0 (2017-04-21) -- "You Stupid Darkness" Copyright (C) 2017 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 (64-bit) R�����������������κε����� ��ijЩ����������Խ�������ɢ���� ��'license()'��'licence()'����ɢ������ϸ������ R�Ǹ������ƻ�����������Ϊ֮�����˹���. ��'contributors()'���������ߵ���ϸ��� ��'citation()'�����������ڳ���������ȷ������R��R������� ��'demo()'����һЩʾ��������'help()'���Ķ����߰����ļ����� ��'help.start()'ͨ��HTML��������������ļ��� ��'q()'�˳�R. > print(123) [1] 123

    参考:

    php调用R的脚本实现方案

    命令行运行R语言脚本(代码)

     Windows:

    键入 cd C:Program FilesRR-3.2.0in   工作目录切换到R的核心程序目录
    键入 R BATCH F:Test.RRscript F:Test.R 运行脚本
    前者R控制台内容记录到Test.Rout文件中,后者则将数据输出到windows控制台。二者涉及文件创建都需要权限。

  • 相关阅读:
    在嵌入式设备中实现webrtc的第三种方式①
    海思dv300cv500交叉编译webrtc
    Windows编译运行webrtc全过程
    如何使用C#调用C++类虚函数(即动态内存调用)
    使用Windows的Linux子系统搭建嵌入式开发环境
    Spring进阶教程之在ApplicationContext初始化完成后重定义Bean
    Java与邮件系统交互之使用Socket验证邮箱是否存在
    旧博客内容 & 洛谷日报(转载)
    多项式不全家桶
    NOIP2020游记
  • 原文地址:https://www.cnblogs.com/yiyezhouming/p/8459485.html
Copyright © 2020-2023  润新知