我可以删除php功能吗?

时间:2011-03-17 17:24:44

标签: php

我想用:

function list(args);

list是保留字。

我可以从PHP中删除列表功能,禁用它,还是以其他方式?

3 个答案:

答案 0 :(得分:11)

不,你不能,也不应该。重新定义内置函数是一件坏事,特别是像list那样基本的东西,它根本不是函数 - 它是一种语言结构。

您所能做的只是为您的功能提供一个独特的名称。

答案 1 :(得分:6)

在正常情况下,不,你不能删除一个功能。

使用runkit扩展名(我几乎从未见过安装在服务器上 - 绝对不会在生产服务器上安装!),你有{{3>功能,这可能会有所帮助。

与其他调试扩展程序相同,例如runkit_function_remove(),它提供APD,顺便说一句。


使用PHP> = 5.3和命名空间,您还可以在自己的命名空间内重新定义一个函数,该函数可以排除替换全局命名空间之一。


但请注意 override_function()不是函数:它是语言构造 - 因此,它的行为不像函数... < / p>


作为旁注:即使可能(和/或在可能的情况下),用自己的功能替换现有的功能,这不是一回事,不是一个好主意:阅读代码的人,保持它,将有更多的困难了解它的作用!

答案 2 :(得分:5)

您只能使用runkit或APD扩展名重命名/删除核心功能。 list实际上不是一个函数,而是一个语言结构,因此即使使用这些扩展也无法重命名。

你应该为自己的函数使用更好的名称选择... list()不是特别有意义。列出什么?