allejo / rosetta-php-script
一个将JavaScript转换为PHP的库
0.0.0
2023-05-16 05:10 UTC
Requires
- php: >=8.1
- nikic/php-parser: ^4.13
- symfony/console: ^5.4
- symfony/event-dispatcher: ^5.4
- symfony/finder: ^5.4
- symfony/process: ^5.4
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.5
- phpunit/phpunit: ^9.5.20
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-08-28 02:10:49 UTC
README
哦,亲爱的上帝,这个项目为什么存在?!
highlight.php项目是将highlight.js项目移植到PHP的项目,允许在服务器端进行语法高亮。highlight.php项目在PHP社区中得到了广泛的应用,从WordPress插件到与Symfony相关的网站再到Laravel插件都有使用。随着highlight.js的进化,它们的语法定义也得到了改进,允许使用复杂的回调。这使得除非我手动维护190多个语言,否则很难保持highlight.php项目的更新。这就是这个项目的诞生:解析JS语法定义并将它们重写为PHP语法定义。
这是否意味着您可以使用这个工具将JavaScript代码转换为生产就绪的PHP代码?请不要这么做。永远不要这么做!由于这个原因可能会引入大量安全漏洞...这个工具的唯一目的是翻译非常基本的highlight.js语法。那么为什么我要开源这个项目呢?因为它可能帮助其他人解决他们的特定用例。
它是如何工作的?
它使用Babel的解析器读取JavaScript代码并将其转换为抽象语法树(AST)。然后我们将这个AST转换为nikic的PHP-Parser支持的AST,并输出PHP代码。
许可证
MIT