Python(至少CPython和Jython,可能是所有Pythons)都有一个名为compile
的函数,可用于将文件编译成字符串或字节码对象。
# foo.py
a = compile("""
print(47)
""", filename="testfile", mode="exec")
exec(a)
运行foo.py
会产生:
$ python foo.py
47
PHP(特别是Zend,任何版本)是否以类似的方式将其字节码编译器暴露给用户代码?更具体地说,你可以动态编译字符串而不像eval
那样执行它们。
答案 0 :(得分:0)
我不知道,但你告诉我的是,你可以即兴发挥这种替代方案非常熟悉:
<?php
include('foo.php');
?>
@echo off
set parameter=%1
set PHP_BIN="c:\xampp\php\php.exe"
%PHP_BIN% %parameter%
例如:所以在windows cmd下的php cli中:
runme index.php
所以从cmd你可以调用index.php的非常简单的cli解释:
{{1}}
47
答案 1 :(得分:0)
如果你想知道PHP是否有编译内置函数来编译PHP代码,那就没有了。 PHP是一种解释型语言,PHP代码需要解释器来运行它,并且解释器具有执行环境。
但是如果你想要实现你的要求,可以通过以下方式实现它: