在 PHP 中有没有更漂亮的方法来做到这一点?
$a = isset($a) ? $a : $b;
在 Python 中,我会做类似的事情:
a = a or b
    不,没有。
PHP 开发人员已将其作为未来版本的可能功能进行了讨论 -请参见此处- 但已被拒绝。
如果你使用 php>=5.3 你可以做得更漂亮一点:
$a = isset($a) ?: $b;
编辑:在这种情况下isset($a)是一个问题,因为如果isset($a)return true,那么$a将被设置为true. 您可以考虑将其更改为
$a = isset($a) ?: $b;
但要小心,如果$a == false || $a == 0then$a将被设置为$b 
从 5.3 开始,您可以执行以下操作:
$a = isset($a) ?: $b;
编辑
正如评论中提到的 - 这实际上将$a等于 true (作为 的结果isset)而不是值$a