Difference between revisions of "R.php"
From Organic Design wiki
(Base on fortran.pgp to start) |
m |
||
Line 8: | Line 8: | ||
if (!ereg( "\\/$", $htdocs)) $htdocs .= '/'; | if (!ereg( "\\/$", $htdocs)) $htdocs .= '/'; | ||
− | $src = $htdocs.'wiki/source. | + | $src = $htdocs.'wiki/source.R'; |
− | $ | + | $R = '/usr/local/bin/R'; |
$out = $htdocs.'wiki/a.out'; | $out = $htdocs.'wiki/a.out'; | ||
− | |||
− | |||
// Write the source to tmp file source | // Write the source to tmp file source | ||
Line 20: | Line 18: | ||
} | } | ||
− | // | + | // Excecute |
− | $article = " | + | $article = "Exuting using $R\n"; |
$now = microtime(); | $now = microtime(); | ||
− | shell_exec("$ | + | shell_exec("$R < $src >$out"); |
− | + | $article .= file_get_contents($out); | |
− | $article .= file_get_contents($ | ||
− | |||
$now = microtime(); | $now = microtime(); | ||
− | |||
$article .= "Execution took " . (microtime() - $now) . " usec\n"; | $article .= "Execution took " . (microtime() - $now) . " usec\n"; | ||
} | } | ||
− | else xwMessage('Permission denied: Only admin can compile and execute | + | else xwMessage('Permission denied: Only admin can compile and execute R articles', 'red'); |
?> | ?> |
Revision as of 09:55, 3 September 2006
<?
- Fortan compiler for XmlWiki Environment
- Licensed under LGPL: www.gnu.org/copyleft/lesser.html
if ($GLOBALS['xwIsAdmin']) { xwSetProperty($properties,'language','TEXT'); $server = $_SERVER['HTTP_HOST']; $htdocs = $_SERVER['DOCUMENT_ROOT']; if (!ereg( "\\/$", $htdocs)) $htdocs .= '/';
$src = $htdocs.'wiki/source.R'; $R = '/usr/local/bin/R'; $out = $htdocs.'wiki/a.out';
// Write the source to tmp file source if ($handle = fopen($src, 'w+')) { fwrite($handle, "$article\n"); fclose($handle); }
// Excecute $article = "Exuting using $R\n"; $now = microtime(); shell_exec("$R < $src >$out"); $article .= file_get_contents($out); $now = microtime(); $article .= "Execution took " . (microtime() - $now) . " usec\n"; } else xwMessage('Permission denied: Only admin can compile and execute R articles', 'red'); ?>