PHP-匿名函数

PHP-匿名函数,php,function,syntax,Php,Function,Syntax,为什么这不起作用: echo (function() { if (strlen($_POST["a"]) > 150) { return "123"; } return "abc"; })(); 在PHP中是否有这样做的方法 就像在JS中一样,您可以做到: var x = (function() {return "asd";})(); 您可以做到这一点,但不能使用优雅的Javascript语法。你需要: 也许你在寻找这样的东西:为什么仅仅因为你

为什么这不起作用:

echo (function() {
    if (strlen($_POST["a"]) > 150) {
        return "123";
    }

    return "abc";
})();
在PHP中是否有这样做的方法

就像在JS中一样,您可以做到:

var x = (function() {return "asd";})();

您可以做到这一点,但不能使用优雅的Javascript语法。你需要:


也许你在寻找这样的东西:为什么仅仅因为你可以在js中使用php就可以使用php呢?他们是不同的languages@Clive如果问是否存在类似的功能,这不是一个不合理的问题……即使是js,在“echo”@lonesomeday上仍然有括号错误。我正在回答问题的第一部分,“为什么这个不起作用”。
echo call_user_func(function() {
    if (strlen($_POST["a"]) > 150) {
        return "123";
    }

    return "abc";
});