-1

PHP 中的fexpr是什么?到目前为止,我发现它是 Lisp 语言中的一种功能:

在 Lisp 编程语言中, fexpr 是一个函数,其操作数被传递给它而不被计算。

我正在阅读一篇深入讨论 PHP 结构的文章,我在那里遇到了 fexpr,谷歌搜索让我了解到它基本上是一个 Lisp 概念!

这就是为什么我不能清楚地环绕我的头。你介意解释一下PHP 中的fexpr是什么吗?和(如果它在语义上是可以想象的)请提供一个例子和用例。

4

1 回答 1

2

简而言之 - 它是启用“函数”之类的东西,isset()empty()接受可能未定义的变量。

这是可能的,因为它们实际上不是函数,而是语言关键字(尝试使用这些名称声明类,它不会起作用)被解析器识别然后由编译器执行。常规函数在运行时执行。

如果这不能回答您的问题,那么您首先需要了解编译器和运行时是什么......恐怕这太宽泛了,无法在这里解释。

除此之外,我不了解 Lisp,但我只能假设“fexpr”是该语言的一个突出特性。如,您可以声明自己的 fexpr-essions - PHP 没有这个;它只是将这个概念用于一些特殊情况。

于 2017-03-10T15:36:23.537 回答