Для чего-то такого простого вы даже не должны использовать PHP, потому что вы можете делать это только с помощью RApache, пакета brew
и простого HTML (CSS / JS не являются обязательными).Просто прочитайте руководство по RApache и посмотрите видеоурок Jeroen Ooms .Вы также должны прочитать brew
руководство.Джефф действительно проделал большую работу!
В двух словах, вам просто нужно настроить файл apache2.conf или .htaccess .Вместо директив <Directory>
или <Location>
вы можете использовать директиву <FilesMatch>
, чтобы вы могли сопоставлять файлы с regexpr.Вот пример .htaccess :
<FilesMatch "^.+\.rhtml$">
SetHandler r-script
RHandler brew::brew
</FilesMatch>
Я использую специальное расширение файла .rhtml
, где я смешиваю HTML с синтаксисом R в тегах <%
и %>
(см. brew
документация).Я не использовал brew
с PHP, потому что brew
с HTML сделал свое дело.
В любом случае, вы сказали, что хотите:
написать страницу вPHP, который содержит команду, которую я хотел бы выполнить в R, а затем передать результаты обратно, чтобы иметь возможность работать с ними
- о выполнении команд из пользовательского ввода ... хорошо ...не делай этого!Особенно не позволяйте пользователям выполнять пользовательские команды, потому что они могут легко передавать команды
system
или file.*
и портить вашу систему!Вы можете использовать AppArmor, но все еще далеко ... - сосредоточиться на простых формах HTML и использовать POST , GET , COOKIES , FILES и SERVER переменных, которые предоставляет RApache, а затем манипулировать вводами в скрипте R
- о "передаче результатов назад", вы можете использовать либо
XML
Пакет R или rjson
(мой любимый, и я рекомендую его).Затем вы можете передать объект R в функцию toJSON
и десериализовать его с помощью JavaScript.Конечно, это верно только в том случае, если ваши клиенты являются веб-браузерами, в противном случае, если вы, скажем, хотите передать некоторую информацию во встроенную систему, вы должны использовать стандарт XML
-way - для чего-то такого простоговам не нужен PHP.В любом случае, вам следует связаться с Джероеном, я знаю, что он использовал некоторый PHP в своем приложении Stockplot
. Для любых дальнейших вопросов используйте Список рассылки RApache .
... и привет, мир R-webdev!=)