123456789101112131415161718192021222324252627282930313233343536 |
- <?php
- class LineProcessor {
- protected $_processor;
- public function readLineLoop() {
- $fh = fopen('php://stdin', 'r');
- $p = $this->_processor;
- while(($line = fgets($fh))) {
- echo $p($line);
- }
- }
- public function setProcessor($p) {
- $this->_processor = $p;
- }
- }
- $v8 = new V8Js();
- $v8->lp = new LineProcessor();
- $v8->startDebugAgent('LineProcessor', 9222, V8Js::DEBUG_AUTO_BREAK_NEVER);
- $JS = <<< EOT
- print("Hello LineProcessor User!\\n");
- PHP.lp.setProcessor(function (foo) {
- return foo.toUpperCase();
- });
- PHP.lp.readLineLoop();
- EOT;
- $v8->executeString($JS, 'processor.js');
|