Apache WebサーバでPHPコード内にRスクリプト(script.R)を実行します。ここ は私のRコードです:私はパッケージをインストールし、インポートデータは、その後、私はデータに分類ツリーを進めることができます。ApacheサーバでPHPからRスクリプトを実行
library(lubridate)
library(plyr)
library(rpart)
library(sqldf)
library(survival)
library(randomForest)
library(rpart.plot)
data=read.table(file = "t.txt",header = T,sep = ";",stringsAsFactors = T)
input=read.table(file = "file.txt",header = T,sep = ";",stringsAsFactors = T)
tree=rpart(sat~.,data,method="class")
png("tree.png", width=1000, height=800, antialias="cleartype")
plot(tree, uniform=TRUE,
main="Classification Tree")
text(tree, use.n=TRUE, all=TRUE, cex=0.8)
dev.off()
私のPHPスクリプトは、このRスクリプトを実行する必要があります。彼らは中に置かれ、 "C:\ Apache24 \ htdocsに" "file.txtは" と "t.txt"
は、だから私のPHPファイルがで構成さと:
<?php
exec("Rscript script.R", $results);
print_r($results);
?>
しかし、私は取得 "アレイ()"
'passthru()'を使ってすべての出力を取得してみてください。 'exec()'は最後の行だけを返します:http://php.net/manual/en/function.passthru.php –
同じ結果!それはリターン "1"を得る。私はそれは実行がうまくいったことを意味すると思いますが、私はプロット( "tree.png")を持っていません。 Rがサーバーにインストールされていない可能性があります。それがどうかどうすれば確認できますか? –