php中括号的输出是什么?

What is the output of parenthesis in php?

$number = 1;

这是有效的:

$number = ($number) + 1;

但这是无效的:

$number = ($number) ++;

那为什么我可以用+ 1增加它,但我不能用++增加它?

递增运算符++ 递增数字或字符串变量。 ($number) 不是变量而是表达式。

$number = ($number) + 1;

这是有效的,因为您在表达式中加了 1。

++ 因为递增运算符不能用于表达式,它只能用于变量。

来自手册:

The increment/decrement operators only affect numbers and strings.

出于与这些有效的相同原因:

isset($_GET['foo'])
$bar++;
$data = array(1, 5, 6);
sort($data);

...这些不是:

isset('hi');
'hi'++;
33++;
sort(array(1, 5, 6));

一些函数、运算符和构造对 变量 进行操作,在其他地方没有意义。这里的括号基本上是转移注意力。