Skip to content

DaveM2011/PHPJS

 
 

Repository files navigation

PHPJS

Run javascript inside PHP, powered by the awesome Duktape Javascript engine.

Why?

  1. It's fun!
  2. Javascript is becoming mainstream, with hundreds of libraries. Having an easy way of sharing code with Javascript natively makes using them a lot more exciting
  3. All the tests pass

How to install it?

phpize
./configure --enable-js
make install

Then add extension=phpjs.so to your php.ini

How to use it?

There is JS class, each instance runs it's own Javascript virtual machine (or duktape's context).

$js1 = new JS;
$js1->load("foobar.js");

The JS object is like a proxy between the Javascript and the PHP userlands. In the PHP side, the JS looks like an Array or an object.

$js['foobar'] = 1; // Set `foobar` inside Javascript (global variable)
var_dump($js['XXX']); // Read global variable 'XXX' from javascript
$js->fnc(); // Call fnc() function from Javascript.

Inside Javascript there are also some intergration. For instance we have a $PHP (or PHP) global object.

$PHP.var_dump("something"); // Call a PHP function!
$PHP.$something = 1; // set a variable
print($PHP.$something_else); // read a variable from PHP

TODO

  1. Better sharing of objects between PHP and Javascript
  2. More documentation
  3. More integration :-)

About

Run javascript inside PHP (powered by duktape.org)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 79.5%
  • Shell 16.2%
  • M4 2.0%
  • PHP 2.0%
  • Makefile 0.2%
  • Awk 0.1%