V8 Javascript Engine for PHP — This PHP extension embeds the Google V8 Javascript Engine
fork from : https://github.com/phpv8/v8js.git

Patrick Reilly e58c17ad73 Merge pull request #30 from cscott/libv8-check 11 سال پیش
js 1c23a38026 Initial import 14 سال پیش
samples 7e90439cdf Make sure all tests and samples use the new exception class name V8JsScriptException. 12 سال پیش
tests 286b0d8ac0 Handle non-construct call 11 سال پیش
.gitignore d0037b1886 Add .gitignore file. 12 سال پیش
CREDITS f9d363c64e add Simon Best to credits 12 سال پیش
Makefile.frag 1c23a38026 Initial import 14 سال پیش
README e508410a79 Ensure libv8 is >= 3.17.11 (fixes issue #12). 11 سال پیش
README.md e508410a79 Ensure libv8 is >= 3.17.11 (fixes issue #12). 11 سال پیش
TODO 1c23a38026 Initial import 14 سال پیش
config.m4 e508410a79 Ensure libv8 is >= 3.17.11 (fixes issue #12). 11 سال پیش
package.xml 0db973bee3 Fix version 12 سال پیش
php_v8js.h 7593cbcc59 Update copyright information 13 سال پیش
php_v8js_macros.h 286b0d8ac0 Handle non-construct call 11 سال پیش
test.php 7e90439cdf Make sure all tests and samples use the new exception class name V8JsScriptException. 12 سال پیش
v8js.cc ffa42cdfaf Replaced deprecated v8 api calls with newer equivalents 12 سال پیش
v8js_commonjs.cc 8ae7606338 Refactor CommonJS modules functionality to store state in the extension globals and context as appropriate. 12 سال پیش
v8js_convert.cc 286b0d8ac0 Handle non-construct call 11 سال پیش
v8js_methods.cc ffa42cdfaf Replaced deprecated v8 api calls with newer equivalents 12 سال پیش
v8js_variables.cc ffa42cdfaf Replaced deprecated v8 api calls with newer equivalents 12 سال پیش

README

V8Js
====

V8js is a PHP extension for Google's V8 Javascript engine


Minimum requirements
--------------------

- V8 library version >= 3.17.11 (trunk)

- PHP 5.3.3+ (non-ZTS build preferred)
Note: V8 engine is not natively thread safe and this extension
has not been designed to work around it either yet and might or
might not work properly with ZTS enabled PHP. :)


API
===

class V8Js
{
/* Constants */

const string V8_VERSION;
const int FLAG_NONE;
const int FLAG_FORCE_ARRAY;

/* Methods */

// Initializes and starts V8 engine and Returns new V8Js object with it's own V8 context.
public __construct ( [string object_name = "PHP" [, array variables = NULL [, array extensions = NULL [, bool report_uncaught_exceptions = TRUE]]] )

// Compiles and executes script in object's context with optional identifier string.
public mixed V8Js::executeString( string script [, string identifier [, int flags = V8Js::FLAG_NONE]])

// Returns uncaught pending exception or null if there is no pending exception.
public V8JsException V8Js::getPendingException( void )

/** Static methods **/

// Registers persistent context independent global Javascript extension.
// NOTE! These extensions exist until PHP is shutdown and they need to be registered before V8 is initialized.
// For best performance V8 is initialized only once per process thus this call has to be done before any V8Js objects are created!
public static bool V8Js::registerExtension(string ext_name, string script [, array deps [, bool auto_enable = FALSE]])

// Returns extensions successfully registered with V8Js::registerExtension().
public static array V8Js::getExtensions( void )
}

final class V8JsException extends Exception
{
/* Properties */
protected string JsFileName = NULL;
protected int JsLineNumber = NULL;
protected string JsSourceLine = NULL;
protected string JsTrace = NULL;

/* Methods */
final public string getJsFileName( void )
final public int getJsLineNumber( void )
final public string getJsSourceLine( void )
final public string getJsTrace( void )
}