<?php require "Octave_lib.php"; $o = new Octave("localhost"); $o->init(); $time = microtime(true); $o->registerPartialHandler("process_partial"); $result = ""; $count = 0; $o->query("eye(700)"); echo "Time: " . number_format(microtime(true) - $time, 8) . " seconds\n"; echo "Size: " . strlen($result) . " bytes\n"; echo "Number of partial results: " . $count . "\n"; function process_partial($payload, $partial) { global $result, $count; $count++; $result .= $payload; } /* Time: 0.99880290 seconds Size: 980701 bytes Number of partial results: 45 */
<?php require "Octave_lib.php"; $octave = new Octave(false); $octave->run("tic()"); usleep(500); echo "Raw output: " . $octave->query("toc()"); // Raw output: 0.00391603 echo "Octave output: " . $octave->runRead("toc()"); // Octave output: Elapsed time is 0.00703096 seconds.
<?php require "Octave_lib.php"; $octave = new Octave(false); $octave->run("A=1"); $octave->run("B=2"); echo "Result=" . $octave->query("A+B"); // Result=3
<?php require "Octave_lib.php"; $o = new Octave(false); $o->init(); $time = microtime(true); $result = $o->query("eye(700)"); echo "Time: " . number_format(microtime(true) - $time, 8) . " seconds\n"; echo "Size: " . strlen($result) . " bytes\n"; /* Time: 1.01925111 seconds Size: 980701 bytes */
<?php require "Octave_lib.php"; $octave = new Octave(false); $octave->run("A=eye(5)"); $fname = trim($octave->query("tmpnam()")); $octave->run("csvwrite('{$fname}',A)"); echo $octave->retrieve($fname); /* 1,0,0,0,0 0,1,0,0,0 0,0,1,0,0 0,0,0,1,0 0,0,0,0,1 */ $octave->run("unlink('{$fname}')");
<?php require "Octave_lib.php"; $octave = new Octave(false); echo "Result=" . $octave->query("1+2"); // Result=3