我如何将PHP功能扩展到功能之外?班级图书馆?

时间:2010-10-25 00:42:08

标签: php

我想知道如何将PHP功能扩展到框架,函数或类库之外? 我想要实现的一个例子是能够创建自己的运算符,自己制作语言结构(如foreach,while等)。
还有很多内置函数,它们只是全局可用而不是在包或其他东西中,所以我有一系列保留关键字与我想写的任何类或函数冲突。
我知道一个理想的解决方案是“用PHP以外的其他语言编程”。这是合乎逻辑的,我知道python&红宝石已经,但我想利用人气和& PHP在绝大多数系统上的可用性 我正在考虑创建一个工具来编译一些自定义语言我自己有所有自由我正在寻求有效的PHP代码,但如果我知道如何做到这一点我会更好地破解PHP核心,但我不知道很多c或c ++ (可能只是如何制作抽搐,tac toe)
那我怎么能实现呢?如果从PHP本身不可能,我可以使用python或ruby编写扩展/修改php的功能吗?如果这不可能,我需要学习哪些东西/语言才能达到我想做的目标?

2 个答案:

答案 0 :(得分:3)

  

关于我想要实现的目标的一个例子是能够创建自己的运算符,自己制作语言结构(如foreach,while等等)。

你不能,也不应该。语言不支持这一点。即使您下载PHP源代码并添加自己的自定义运算符/关键字,它们也不会在其他PHP安装上神奇地可用。既然你说你想要使用PHP的唯一原因是因为它的受欢迎程度和可用性,这种方式就失败了。

  

我正在考虑创建一个工具来编译一些我自己制作的自定义语言......以有效的PHP

将一种脚本语言编译成另一种脚本语言是个坏主意。你将编写可以想象的最不可移植的代码。

  

...但是如果我知道如何做到这一点我会更好地破解PHP核心,但我不太了解c或c ++(可能只是如何制作一个抽动,tac toe)

如果你不知道任何编译语言,你甚至不应该考虑为PHP驱动的语言编写编译器。

  

如果PHP本身无法实现的话......我需要学习哪些东西/语言来达到我想要做的事情?

显然,C。如果您打算更改核心功能,请了解PHP开发的语言。

答案 1 :(得分:0)

尝试创建其他语言(自定义)的目标是什么,没有人知道如何使用。 按原样使用PHP,并在C中构建扩展。您可以根据需要为内部扩展功能命名。