WikiChree.COM
新規
編集
添付
管理
WikiChreeガイド
WikiChreeの公式ガイドです。
最新の20件
2026-09-19
プラグイン/linkvote
2026-09-05
DokuFarm
WikiChree.COM
プラグイン/touchgraph
プラグイン/tracker_list
プラグイン/template
プラグイン/version
プラグイン/yetlist
プラグイン/unfreeze
プラグイン/source
プラグイン/versionlist
プラグイン/update_entities
2026-09-04
[テーブル番号または設定]
プラグイン/vote
プラグイン/tracker
プラグイン/topicpath
プラグイン/size
プラグイン/showrss
プラグイン/server
プラグイン/setlinebreak
開始行:
* Pkript/トランスパイラ/PHP_API [#ue7a651a]
PHPスクリプト内から Pkript_Transpiler クラスを直接利用す...
#contents
** リファレンス [#da6a3144]
*** クラス概要 [#sfb448d3]
#code(php){{
class Pkript_Transpiler {
public function __construct(array $options = []);
public function transpile(string $jsCode): string;
public function transpileFile(string $inputFile, ?str...
public function transpileAst(array $ast): string;
}
}}
*** コンストラクタ引数 ($options) [#w0b335da]
連想配列で設定オプションを渡します。
|~キー名|~型|~デフォルト値|~説明|
|target|string|'standard'|'standard' または 'pukiwiki'|
|plugin_name|string|null|PukiWikiプラグイン名|
|const_mode|string|'define'|'define', 'const', 'var'|
|const_guard|bool|false|define() の重複ガード|
|runtime_mode|string|'none'|'none' または 'full'|
|guard_functions|bool|false|function_exists() ガードの付与|
|auto_invoke|string|null|自動呼び出しする関数名|
|strict_types|bool|false|strict_types 宣言の付与|
|wrap_main|bool|true|トップレベル文の main() ラップ|
*** メソッド [#tb966640]
**** transpile(string $jsCode): string [#d6b7487e]
JavaScriptソースコード文字列をパースし、変換されたPHPコー...
**** transpileFile(string $inputFile, ?string $outputFile...
指定されたファイルからJavaScriptを読み込み、PHPコードを返...
**** transpileAst(array $ast): string [#kd80040c]
構文解析済みのAST配列を受け取り、PHPコードを返します。
** 使用法 [#u9ba88f8]
*** 基本的な利用例 [#u07dd21f]
#code(php){{
require_once __DIR__ . '/transpiler/transpiler.php';
$transpiler = new Pkript_Transpiler([
'target' => 'standard',
'strict_types' => true,
'auto_invoke' => 'run',
]);
$jsCode = <<<'JS'
function run() {
let list = [1, 2, 3];
let doubled = list.map(x => x * 2);
console.log(doubled);
}
JS;
$phpCode = $transpiler->transpile($jsCode);
echo $phpCode;
}}
----
[[Pkript/トランスパイラ]] | [[Pkript]]
終了行:
* Pkript/トランスパイラ/PHP_API [#ue7a651a]
PHPスクリプト内から Pkript_Transpiler クラスを直接利用す...
#contents
** リファレンス [#da6a3144]
*** クラス概要 [#sfb448d3]
#code(php){{
class Pkript_Transpiler {
public function __construct(array $options = []);
public function transpile(string $jsCode): string;
public function transpileFile(string $inputFile, ?str...
public function transpileAst(array $ast): string;
}
}}
*** コンストラクタ引数 ($options) [#w0b335da]
連想配列で設定オプションを渡します。
|~キー名|~型|~デフォルト値|~説明|
|target|string|'standard'|'standard' または 'pukiwiki'|
|plugin_name|string|null|PukiWikiプラグイン名|
|const_mode|string|'define'|'define', 'const', 'var'|
|const_guard|bool|false|define() の重複ガード|
|runtime_mode|string|'none'|'none' または 'full'|
|guard_functions|bool|false|function_exists() ガードの付与|
|auto_invoke|string|null|自動呼び出しする関数名|
|strict_types|bool|false|strict_types 宣言の付与|
|wrap_main|bool|true|トップレベル文の main() ラップ|
*** メソッド [#tb966640]
**** transpile(string $jsCode): string [#d6b7487e]
JavaScriptソースコード文字列をパースし、変換されたPHPコー...
**** transpileFile(string $inputFile, ?string $outputFile...
指定されたファイルからJavaScriptを読み込み、PHPコードを返...
**** transpileAst(array $ast): string [#kd80040c]
構文解析済みのAST配列を受け取り、PHPコードを返します。
** 使用法 [#u9ba88f8]
*** 基本的な利用例 [#u07dd21f]
#code(php){{
require_once __DIR__ . '/transpiler/transpiler.php';
$transpiler = new Pkript_Transpiler([
'target' => 'standard',
'strict_types' => true,
'auto_invoke' => 'run',
]);
$jsCode = <<<'JS'
function run() {
let list = [1, 2, 3];
let doubled = list.map(x => x * 2);
console.log(doubled);
}
JS;
$phpCode = $transpiler->transpile($jsCode);
echo $phpCode;
}}
----
[[Pkript/トランスパイラ]] | [[Pkript]]
ページ名:
既存のページ名で編集する