我在旧平台上的PHP 5.3中使用ImageMagick。我偶然发现了一段代码,当在变量周围使用括号时,该代码不起作用,但是当这些括号被删除时,该代码却起作用了。括在变量中的括号有什么作用?
$im = new imagick();
$im->readImageBlob($photo);
$im->setImageFormat('jpg');
$photo = ($im);
它不使用此代码读取图像数据,但是当我删除括号时它却读取了数据。
$photo = $im;
有什么想法吗?
答案 0 :(得分:5)
围绕变量的括号仅用于优先级,通常用于计算。使用您显示的代码,$photo = $im;
和$photo = ($im);
之间完全没有功能差异
例如:
$x = 2;
$y = 5;
$z = 10;
$result_1 = $x * $y + $z; //might not give you the result you expect.
$result_2 = $x * ($y + $z); //This will ensure that $y & $z get added before multiplying by $x.
以上是括号通常的用法。