2015-06-29 6 views
-1

im new для PHP, и я хочу запустить Rscript внутри PHP. Я попробовал метод, упомянутый здесь http://www.r-bloggers.com/integrating-php-and-r/, но он работает. Я использую wamp-сервер в windows. Формы загружаются, но как только вводится ввод $ N, Rscript не запускается. (Это я узнал, увидев, создан ли образ). Местоположение моего php и r-скрипта находится в «c :. \ WAMP \ WWW \»Итак, у меня есть, чтобы установить путь ехес функции в Rscript.exe месте ?? или есть ли другой способ ?? Пожалуйста, помогите ..Как интегрировать R с PHP?

Это мой PHP код

<?php 
// poorman.php 

echo "<form action='poorman.php' method='get'>"; 
echo "Number values to generate: <input type='text' name='N' />"; 
echo "<input type='submit' />"; 
echo "</form>"; 

if(isset($_GET['N'])) 
{ 
$N = $_GET['N']; 

    // execute R script from shell 
    // this will save a plot at temp.png to the filesystem 
    exec("Rscript my_rscript.R $N"); 

    // return image tag 
    $nocache = rand(); 
    echo("<img src='temp.png?$nocache' />"); 
} 
?> 

Это г скрипт

args <- commandArgs(TRUE) 

N <- args[1] 
x <- rnorm(N,0,1) 

png(filename="temp.png", width=500, height=500) 
hist(x, col="lightblue") 
dev.off() 

`

ответ

0

Проверьте результат выполнения exec(). Например. через

exec("Rscript my_rscript.R $N 2>&1", $output); 
echo '<pre>', join("\r\n", $output), "</pre>\r\n"; 

Exec() возвращает только выходной сигнал, отправляемый в поток ошибок: 2> & 1 перенаправляет STDERR на стандартный вывод (работает под окнами, а), так что вы должны также видеть сообщения об ошибках, как, например, "RScript: команда не найдена "

+0

спасибо человеку:) Это работает. – rajkamal

Смежные вопросы