php 逻辑运算if相关的问题

<?php

$a = 6; $b = 5;

if($a = 3 || $b = 8){

echo $a;       // 输出$a的值是1,这个是为什么么??? 不是应该3吗?

echo "<br/>";

echo $b;     

}

?>

运算符优先顺序没搞清楚,赋值是最后的,那个1是true,而不是int 1

因为$a = 3没执行,报错了 if里面只能写逻辑表达式

这个1是布尔值true,,,,,,