Yes; exit(), sleep(), print(), and var_dump() are all available. Scroll to the bottom of http://svn.php.net/viewvc/pecl/v8js/trunk/v8js_methods.cc?view=markup
On Thu, Mar 15, 2012 at 12:50 PM, David Clements < [email protected]> wrote: > > So is this print function inbuilt to the PHP v8 extension? It's not > declared, also.. what a crazy example > > > On Thu, Mar 15, 2012 at 2:55 PM, Isaac Schlueter <[email protected]> wrote: > >> The string being stored to $JS is valid javascript. >> >> len = print('Hello' + ' ' + 'World!' + "\n"); >> len; >> >> JavaScript programs evaluate to their completion value (the expression >> value of the last statement). The `print()` on its own would have the >> same result, so the `len` global is unnecessary, but then again, so >> are the semicolons and the excessive string concatenation ;) >> >> The same example in js: >> >> function print (m) { console.log(m) ; return m.length } >> var JS = 'len = print(\'Hello\' + \' \' + \'World!\' + "\\n");\nlen;' >> var res = eval(JS) // or vm.runIn...() in node.js >> console.log('result=', res) >> >> >> On Wed, Mar 14, 2012 at 21:24, Dave Clements >> <[email protected]> wrote: >> > Yah that's what I thought, they haven't used var, and the line with >> len; on >> > it's own is supposed to return int(13). >> > >> > I suppose I just wanted to confirm whether this example really was as >> > clueless as it seems >> > >> > On Thursday, 15 March 2012 03:33:02 UTC, Matt wrote: >> >> >> >> I think the issue here is that it doesn't appear to be >> valid JavaScript at >> >> all. Or at the very least, it's fairly non-sensical (i.e., execute a >> print >> >> statement, which we can only assume is defined for V8Js, store the >> return >> >> value [probably undefined?] to a variable, and then "return" that >> variable). >> >> >> >> -Matt >> >> >> >> On Mar 14, 2012, at 11:35 PM, Matthew Vickers wrote: >> >> >> >> This seems to be PHP pushing Javascript through V8. >> >> >> >> $JS is a here doc containing some javascript code. >> >> >> >> Matt >> >> >> >> ----- "Dave Clements" wrote: >> >> > This is a "Javascript" example from the PHP v8 extension >> >> >> >> > >> >> http://www.php.net/manual/en/v8js.examples.php >> >> > >> >> >> >> > >> >> <?php >> >> > >> >> > $v8 = new V8Js(); >> >> > >> >> > /* basic.js */ >> >> > $JS = <<< EOT >> >> > len = print('Hello' + ' ' + 'World!' + "\\n"); >> >> > len; >> >> > EOT; >> >> > >> >> > try { >> >> > var_dump($v8->executeString($JS, 'basic.js')); >> >> > } catch (V8JsException $e) { >> >> > var_dump($e); >> >> > } >> >> > >> >> > ?> >> >> > >> >> >> >> > >> >> >> >> > >> >> I know this isn't Node, but I just wanted to check I'm not mad... the >> $JS >> >> variable.. that's not javascript at all is it? Or have I completely >> >> misunderstood v8? >> >> >> >> -- >> >> > Job Board: http://jobs.nodejs.org/ >> >> > Posting >> >> > guidelines: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> >> > You received this message because you are subscribed to the Google >> >> > Groups "nodejs" group. >> >> > To post to this group, send email to [email protected] >> >> > To unsubscribe from this group, send email to >> >> > [email protected] >> >> > For more options, visit this group at >> >> > http://groups.google.com/group/nodejs?hl=en?hl=en >> >> > >> >> >> >> -- >> >> Job Board: http://jobs.nodejs.org/ >> >> Posting >> >> guidelines: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> >> You received this message because you are subscribed to the Google >> >> Groups "nodejs" group. >> >> To post to this group, send email to [email protected] >> >> To unsubscribe from this group, send email to >> >> [email protected] >> >> For more options, visit this group at >> >> http://groups.google.com/group/nodejs?hl=en?hl=en >> >> >> >> >> > -- >> > Job Board: http://jobs.nodejs.org/ >> > Posting guidelines: >> > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> > You received this message because you are subscribed to the Google >> > Groups "nodejs" group. >> > To post to this group, send email to [email protected] >> > To unsubscribe from this group, send email to >> > [email protected] >> > For more options, visit this group at >> > http://groups.google.com/group/nodejs?hl=en?hl=en >> >> -- >> Job Board: http://jobs.nodejs.org/ >> Posting guidelines: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> You received this message because you are subscribed to the Google >> Groups "nodejs" group. >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> For more options, visit this group at >> http://groups.google.com/group/nodejs?hl=en?hl=en >> > > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
