PHP5上でJavascriptを動かす: J4P5
2006年01月24日
J4P5 is a JavaScript interpreter written in PHP 5, that allows to run untrusted scripts in a sandbox on your server. It aims to implement most of Ecma-262 3d edition.
PHP5上でかかれたJavascriptインタプリタ。
JavascriptのソースをPHP5で動かすことが出来るようです。
次のようなソースで、JavascriptのソースがPHP5上であまりにも簡単に動いてしまうからかなり驚き。
<?php
/*
* P4J5のサンプル
*/
// モジュールの読み込み
include "js.php";
// Javascriptのコード記述し$codeに代入
$code = <<<EOD
function color() {
var s=Math.floor(Math.random()*256*256*256).toString(16);
return "#" + ("00000"+s).substr(-6);
}
String.prototype.colorize = function() {
var o='';
for (var i=0;i<this.length;i++) {
o += '<span style="color:'+color()+'">'+this.charAt(i)+'</span>';
}
return o;
};
String.prototype.big = function() {
return "<span style='font-size:6em'>"+this+"</span>";
};
print("Hello, World!".colorize().big());
EOD;
// Javascript実行
js::run($code);
?>
js::run("Javascriptコード"); のように呼び出せば簡単に動いてしまいます。素晴らしい。
Javascriptパーサーのソースもオープンソースなので自由に見ることができ、ここも興味深いところですね。
上記スクリプトの出力例)
投稿者 KJ : 2006年01月24日 12:00
|
![]()
間違いの指摘をしていただける方はメールでお願いします
最新のブログ記事
- jQueryでゲームを作成するためのライブラリ「gameQuery」
- Firefoxでモバイルサイトの動作確認「FireMobileSimulator」
- 2008年9月5日 管理人のブックマーク
- tableタグで画像を描くPHPクラス
- ブラウザの使用時間を計れるFirefox拡張「TimeTracker」
- ActionScript3で曲げたりうねらせたりする物理ライブラリ「as3dmod」
- 2008年9月4日 管理人のブックマーク
- シンプルなUIアイコンセット「Simplicio」
- jQueryを使ったアプリのユニットテスト「QUnit」
- Photoshopで漫画エフェクトを与えるチュートリアル20
- 2008年9月3日 管理人のブックマーク


















