如何在 Windows 上集成 PHP 和 R?

2023-12-25

集成 PHP 和 R 时遇到一些问题。我正在研究这篇文章:

http://www.r-bloggers.com/integrating-php-and-r/ http://www.r-bloggers.com/integrating-php-and-r/

R 已安装并通过我们的 R 脚本进行验证:

Rscript C:\inetpub\wwwroot\client\includes\decisionTreePredictor.R 20 10 O 1000 10000 5000 0.2 10.2

打印计算结果的单个值:

[1] "0"

(Rscript.exe的路径在Windows环境变量中设置)

我有一个使用 exec() 的 PHP 脚本,该脚本使用以下命令成功测试:

$result = exec('dir',$output,$returnVar);
echo "<br>result ". print_r($result,true);
echo "<br>output <pre>". print_r($output,true) , "</pre>";
echo "<br>return ". print_r($returnVar,true);

返回:

result 2 Dir(s) 117,749,354,496 bytes free
output 
Array
(
    [0] =>  Volume in drive C is C_DRIVE
    [1] =>  Volume Serial Number is 7EB2-A074
    [2] => 
    [3] =>  Directory of C:\inetpub\wwwroot\client\temp
    [4] => 
    [5] => 05/17/2014  10:29 PM              .
    [6] => 05/17/2014  10:29 PM              ..
    [7] => 05/16/2014  09:24 AM             5,181 dbimporttest.php
    [8] => 05/17/2014  10:29 PM                 0 routput.txt
    [9] => 05/17/2014  11:42 PM               701 rscripttest.php
    [10] => 05/16/2014  04:59 PM               425 whoami.php
    [11] =>                4 File(s)          6,307 bytes
    [12] =>                2 Dir(s)  117,749,354,496 bytes free
)


return 0

当我尝试在 exec 命令中运行 R 脚本时,它失败:

$result = exec('Rscript.exe C:\inetpub\wwwroot\client\includes\decisionTreePredictor.R 20 10 O 1000 10000 5000 0.2 10.2',$output,$returnVar);
echo "<br>result ". print_r($result,true);
echo "<br>output <pre>". print_r($output,true) , "</pre>";
echo "<br>return ". print_r($returnVar,true);

返回:

result 
output 
Array
(
)


return 1

我在跑步:

  • Windows Server 8 R2
  • IIS 8
  • PHP 5.5
  • R 3.1

由于无法让 exec() 工作或输出可用的错误,我决定寻找替代途径。使用 COM 类似乎给了我我想要的东西。

这是最终的操作代码:

$command = 'C:\Program Files\R\R-3.1.0\bin\Rscript.exe C:\inetpub\wwwroot\client\includes\decisionTreePredictor.R 20 10 O 1000 10000 5000 0.2 10.2';
$pCom = new COM("WScript.Shell");
$pShell = $pCom->Exec($command);
$sStdOut = $pShell->StdOut->ReadAll;    # Standard output
$sStdErr = $pShell->StdErr->ReadAll;    # Error
echo "<pre>$sStdOut</pre>";

奇怪的是我无法让 exec() 来完成这项工作,因为这似乎是大多数讨论 R/PHP 集成的博主首选的解决方案。

无论如何,我希望这个解决方案可以帮助其他遇到我这种情况的人!

附:您需要确保扩展在 php.ini 中处于打开状态(安装时默认处于关闭状态):extension=php_com_dotnet.dll

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Windows 上集成 PHP 和 R? 的相关文章

  • PSR-4 代码库中条令生成器的解决方法

    在 Windows 机器上使用 Symfony 2 和 Doctrine 我正在尝试 从现有模式生成实体 php app console doctrine mapping import force CoreBundle annotation
  • 适用于 Windows 的 PHP 支持的 GUI 应用程序

    我知道 PHP 是一种解释性语言 对于基于 Web 的事物来说 不是为在实际操作系统上运行 GUI 应用程序而设计的 但是有没有办法呢 基本上 是否有一个框架 系统允许我创建 本机 基本上是二进制文件 exe 看起来像带有本机控件和所有内容
  • PHP 中的正则表达式:找到第一个匹配的字符串

    我想在非常长的文本中找到第一个匹配的字符串 我知道我可以使用 preg grep 并获取返回数组的第一个元素 但是 如果我只需要第一场比赛 或者我知道提前只有一场比赛 那么这样做效率不高 有什么建议吗 预匹配 http www php ne
  • 如何连接 R 列表中的多个 .wav 文件?

    我有一个 wav 文件列表my list library seewave library tuneR data tico audio lt tico freq lt 22050 breaks lt c 0 0 2 0 4 0 6 0 8 i
  • 是否可以在 R 中创建自定义 pch 形状?

    R 中的许多绘图函数都使用图形参数pch指定数据点的形状 根据R 文档 https www rdocumentation org packages graphics versions 3 6 2 topics points 有 26 个矢量
  • 如何在 ggplot2 中向 x 轴添加特定值?

    我正在尝试在 ggplot2 中绘制图表 我希望 x 轴显示 2 84 以及下面键入的序列 除了在 Breaks 中输入所有精确值之外 还有其他方法吗 我尝试了谷歌 但它没有解决我的问题 scale x continuous limits
  • SimpleSAMLPHP 重定向循环

    我们正在尝试使用自定义 mysql 数据库设置 sso 但它在以下两个请求之间进入无限循环 POST http 192 168 0 15 simplesaml module php core loginuserpass php 设置Cook
  • 如何将变量传递给 ddply 中的自定义函数?

    考虑以下数据 d data frame experiment as factor c foo foo foo bar bar si runif 5 ti runif 5 我想进行相关性测试si and ti 对于每个experiment因素
  • 在 R 中使用 ggplot2 叠加两个图

    有两个数据框 df1 df2我需要使用 ggplot2 创建线图并显示在同一个图表上 df1 x y 2 30 4 25 6 20 8 15 df2 x y 2 12 4 16 6 20 8 24 用于绘制第一个 df p1 lt ggpl
  • 将秒转换为天、小时、分钟和秒

    我想转换一个变量 uptime这是秒 分为天 小时 分钟和秒 Example uptime 1640467 结果应该是 18 days 23 hours 41 minutes 这可以通过以下方式实现DateTime http php net
  • R/ggplot2:如何匹配重叠区域图中的图例和绘图颜色?

    我有两个面积图 称为 蓝色 和 绿色 其中green大部分是在blue情节 但在极少数点上 它高于blue阴谋 我想使用透明度说alpha 0 2对于两者 并且还能够为每个指定颜色 我现在的问题是 自从green情节主要是在blue地块 其
  • R 中的频率加权,与 Stata 的结果比较

    我正在尝试分析明尼苏达大学 IPUMS 数据集中的数据1990 年美国人口普查 http usa ipums org usa sampdesc shtml us1990a in R 我正在使用survey http faculty wash
  • 避免 SQLite3 中的 SQL 注入

    我正在尝试找出一种避免 SQL 注入的好简单方法 到目前为止我只能提出两个想法 对用户输入进行 Base64 编码 其实不想这样做 使用正则表达式删除不需要的字符 目前正在使用这个 不确定是否100 安全 这是我当前的代码
  • 动态显示仪表板页面

    我有一个实用的闪亮应用程序 它使用shinydashboard包裹 新功能需要特定于用户的行为 例如 针对不同的用户名使用不同的数据集 因此我打算 显示登录表单 验证凭据并设置反应值LoggedIn to true如果成功的话 显示实际情况
  • php,in_array,0值

    我试图理解in array下一个场景的行为 arr array 2 gt Bye 52 77 3 gt Hey var dump in array 0 arr 返回值in array 是布尔值true 正如你所看到的no值等于0 所以有人可
  • php向多个收件人发送邮件

    我可以通过在邮件程序中定义 id 来将电子邮件发送到一个电子邮件 id 但是当用户在表单中键入 消息和电子邮件 id 时 我无法理解如何发送到多个收件人 例如 我正在显示一个带有两个文本区域的表单 一个用于电子邮件 ID 一个用于自定义消息
  • PHP 中的嵌套 JSON 输出

    我正在为 iOS 应用程序构建 API 并尝试将 mySQL 数据转换为 JSON 字符串进行处理 所需的输出将需要顶级订单详细信息 例如客户名称和地址 然后是订购的产品子数组 我需要的两个表中有相当多的字段 我希望拥有所有字段 我已经构建
  • 哪个 PHP 5 版本最常用?

    当我开发将在不同配置的客户端 Web 服务 通常使用共享托管 上使用的应用程序时 我应该假设大多数 Web 服务器都具有哪个 PHP 5 版本 例如 5 2 x 5 3 x 等 在所有使用 PHP 版本 5 的网站中 有 84 9 使用版本
  • 修改x轴刻度标签

    我正在尝试更改由生成的箱线图的 x 轴刻度标签ggplot2 x 轴是一个分类变量 HabFac 我想要的是将其刻度更改为 6 个化学品 A E 下面是我的代码 raw data read table Read data p TT ggpl
  • PHP 中的 Zip 流

    我有一个 PHP 脚本 可以动态创建 zip 文件并强制浏览器下载该 zip 文件 问题是 我可以直接将zip文件写入连接到用户浏览器的输出流 而不是先将其保存为服务器上的真实文件 然后发送文件吗 提前致谢 如果您的 Web 服务器运行的是

随机推荐

  • 使用ES6代理捕获Object.hasOwnProperty

    我想使用 ES6 代理来捕获以下常见代码 for let key in trapped if Object prototype hasOwnProperty call obj key continue let value trapped k
  • 使用 find 或 grep 查找来自不同编码系统(Windows 到 Linux)的带有重音字符的文件名

    我试图迟到标记一个与我类似的问题 在 Linux 文件系统上查找非 UTF8 文件名 https stackoverflow com q 623764 522104 以获得进一步的答复 到目前为止还没有运气 所以这里又来了 我和上面链接中的
  • MSIE8兼容模式不渲染动态创建的表

    有点奇怪 如果在 IE8 怪异模式或兼容性视图模式下运行 则以下代码添加的表格不会呈现 谁能告诉我为什么 因为这对我来说并不明显
  • MVC 3 - 嵌套布局 - 部分不会在区域中呈现

    Problem 给定这个嵌套布局结构 Views Shared layoutBase cshtml Views Shared layout cshtml Where layoutBase cshtml是布局 layout cshtml 布局
  • 如何在使用 Axis 1.4 wsdl2java 生成的客户端时获取 SOAP 消息

    对于任何具有使用 Apache Axis 的 Web 服务的中等专业知识的人来说 这可能是一个简单的问题 我有一个由 Axis 1 4 中的 wsdl2java 生成的 Web 服务客户端 我正在编写需要访问实际 SOAP 消息本身的单元测
  • 对可绘制的 alpha 属性进行动画处理

    我想要为 ViewGroup 的背景 Drawable 的 alpha 属性设置动画 我使用 view getBackground 获取对背景可绘制对象的引用 然后我使用以下代码 从这个线程 https stackoverflow com
  • Java中的SortedBiTreeMultimap数据结构?

    是否有任何具有类似 TreeMap 数据结构的 Java 库也支持所有这些 按值查找 如 Guava 的 BiMap 的可能性非唯一键以及非唯一值 如 Guava 的 Multimap 跟踪排序值以及排序的键 如果存在 它可能会被称为 So
  • 如何在ListView的项目之间设置自定义分隔符

    有没有办法使用自定义委托作为每两个连续项目之间的分隔符ListView就像header and footer特性 A ListView可以分为sections 又名团体 该文档提供了一个很好的例子here https doc qt io q
  • Java 的国际字符

    我正在构建一个应用程序 它从 java 获取信息并构建 Excel 电子表格 一些信息包含国际字符 例如 当俄语字符在 Java 中正确呈现时 我遇到问题 但当我将这些字符发送到 Excel 时 它们无法正确呈现 我最初认为问题是编码问题
  • 使用插入单元格到表中时,UITableViewCell 不使用自动布局高度

    背景 我按照说明使用 purelayout 以编程方式创建 UITableViewCellshere https stackoverflow com a 18746930 766570 它基本上表明您必须在单元格上设置顶部 底部约束 然后使
  • 命令参数字符串未计算

    我在 aspx 页面内有一个命令参数 设置为 for 循环内的对象变量 如下所示
  • 将 Monolog WebProcessor 与 Laravel 5.6 结合使用

    我发现新的日志堆栈 通道提供了一种方法tap或定义handlers 但是 我正在努力获得WebProcessor已加载 但似乎不起作用 这个应该被挖掘吗 或者有其他方法来加载它吗 这是 Laravel 5 6 特有的 这是我在使用 Lara
  • 如何使用 JAXB 从 Java 中的 XSD 获取 minOccurs / maxOccurs 值?

    我的应用程序正在调用 Web 服务 并且我已使用 maven jaxb2 plugin 从 WSDL XSD 生成了 Java 类 Web 服务调用在一段时间内工作得很好 但最近我在将对象编组到 XML 时遇到了问题 org xml sax
  • amqp 或 xmpp 用于实时在线游戏[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 以下哪些技术套件适用于多用户在线游戏项目 项目要求 能够在任何给定时间处理 2k 5k 用户 适用于
  • CleanWPPAllFilesInSingleFolder 错误使我的项目不再加载

    我使用 VS2012 创建了一个动态数据项目 一切顺利 然后我开始配置 Web 部署设置 我不确定我到底更改了什么设置 因为没有错误 但是 当我尝试加载解决方案时 我收到该项目的以下错误 并且它将不再加载 Specified conditi
  • 为什么我会收到此 LineUnavailableException?

    我在代码的第 34 行不断收到 LineUnavailableException https www refheap com 21223 https www refheap com 21223 错误读取为javax sound sample
  • 使用 ConstraintLayout 的展开链元素组

    我在使用约束布局传播 2 组元素时遇到问题 我知道这个新布局的目标是使用平面层次结构 因此我想避免将我的元素放入子布局中 我查看了一些很棒的资源 例如constraintlayout com 但无法弄清楚如何使其适用于我的特定案例 我认为这
  • 协会类别的独特性

    我很难理解 UML 2 5 规范中解释的关联类的概念 最让我困惑的是下面这句话 摘自199页 笔记 即使当 AssociationClass 的所有末端都具有 isUnique true 时 也可能有多个实例关联末端类的同一组实例 正如这里
  • 如何能够显示没有文本的表 TD

    我的问题 如何让表格的 TD 不带有文本 而不使其消失 我使用这个 HTML 代码 div div div table cellpadding 0 cellspacing 0 border 0 tr td td td td td td tr
  • 如何在 Windows 上集成 PHP 和 R?

    集成 PHP 和 R 时遇到一些问题 我正在研究这篇文章 http www r bloggers com integrating php and r http www r bloggers com integrating php and r