我读到了这个Article
我想知道这部分:

try {
    //First try getting our user numero uno
    $user = new User(1);

    //Then, let's try to get the exception
    $user2 = new User('not numeric');
} catch( Exception $e ) {
    echo "Donkey Kong has caught an exception: {$e->getMessage()}";
}

为什么{$e->getMessage()}必须放在括号中?
在php手册上有关于此的任何链接说明吗?

我知道如果不放括号会显示错误,但是我想要得到的解释是为什么需要放括号。

最佳答案

这与一个复杂的表达有关。如果不包括括号,即:

echo "Donkey Kong has caught an exception: $e->getMessage()";

...然后,PHP如何知道您要输出的变量?您可能正在尝试执行以下任一操作:
  • 输出$e的值,后跟字符串“-> getMessage()”
  • 输出$e->getMessage的值,后跟字符串“()”
  • 输出$e->getMessage()的值

  • 将括号放在完整表达式的周围会告诉PHP完整表达式,需要对其进行评估并将其包含在字符串中。

    关于php - {}在echo标记 "{$e->getMessage()}",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8671793/

    10-11 08:40