【发布时间】:2011-08-03 09:41:04
【问题描述】:
仅供娱乐,请勿尖叫。
我想在运行时重写一个类的方法的内容(我的意思是,不修改文件,只替换/编辑内存中的代码),可以吗?
使用反射还是其他?
请不要关闭这个问题,我正在寻找除了 runkit 之外的另一个答案。
【问题讨论】:
-
啊啊啊啊啊啊啊啊啊啊啊啊啊啊!!!!!!!!!!!!!!!!
-
我认为解决此问题的一种可能(但错误的方法)是在文件上调用
file_get_contents,进行所需的更改,然后调用eval。缺点是您必须创建一个加载器,因为自己加载文件将是一个巨大的痛苦(或无限循环)。 -
我认为它不应该关闭,因为旧副本中提出的唯一解决方案是“runkit”,而 runkit 非常非常老......我正在寻找想法!
-
如果你不想使用runkit,唯一的选择是classkit。同样旧,不确定它是否适用于当前的 PHP 设置。
标签: php reflection