【问题标题】:Do PHP variable functions work in PHP4?PHP 变量函数在 PHP4 中有效吗?
【发布时间】:2013-10-03 03:20:02
【问题描述】:

我知道你可以在 PHP5 中做这样的事情:

function sayHi() {
    echo "Hi!";
}

$func = "sayHi";
$func();

在文档中称为variable function。但是文档没有说明这适用于什么版本的 PHP。这可能意味着它适用于所有版本的 PHP,但我对此表示怀疑。具体来说,这适用于 PHP4 吗?

【问题讨论】:

    标签: php callback php4


    【解决方案1】:

    对于 php 4.3 他们正在工作。内置函数测试here,你的源码测试here

    【讨论】:

    • 谢谢,你知道这是否从 4.3.0 开始实施?
    • @chowey 我找不到它。另外,我没有 php 3 或更高版本来测试它。正如您所注意到的,Zend 在他们的文档中省略了这些信息。
    • @chowey PHP4 是在底层编写的,并且是在 Zend Engine 1 上构建的。它也有很多错误。现在已经是 2013 年了,连PHP5.2 都被认为已经过时了。
    • 没错,但不能总是控制他的部署环境。
    【解决方案2】:

    绝对是的。正如您在此处看到的,当某个函数中存在依赖项时,他们将其设置在标题下方。

    php版本不依赖

    VARIABLE Functions

    依赖于php版本

    INTVAL Function

    注意:因此,每当您对某个功能有疑问时,您将使用您的 php 版本,最好咨询 php.net 以获取信息。

    【讨论】:

    • 那么这个东西在 PHP4 之前就已经存在了?
    • @chowey yup 正如他们网站中所述,我认为您可以从一开始就广泛地在不同版本的 php 上使用它。您总是可以在那里看到它,无论它是被贬低的还是只能在那里运行的版本。如果没有任何关于它的说明。这意味着你可以广泛使用它。
    • 很公平。该页面上的 cmets 可以追溯到 10 年前,因此它至少得到了这么长时间的支持。
    • 另外,看起来他们并不总是在标题下告诉您版本依赖关系。示例是 anonymous functions 上的页面,该页面仅在 PHP 5.3.0 之后才存在。
    • @chowey,在匿名函数的那个​​页面中,在更改日志部分,他们说:5.3.0 Anonymous functions become available。它不在标题下方,但至少在某处。
    猜你喜欢
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多