Dica de PHP · publicada em
O padrão isset($a['x']) ? $a['x'] : 'padrao' repete a expressão e polui a leitura. O operador ?? faz o mesmo em metade do espaço e sem repetir.
O ??= vai além: atribui só se a chave não existir ou for null. É perfeito para preencher defaults em array de argumentos, que é metade do código de qualquer plugin WordPress.
Uma diferença importante em relação ao ?:: o ?? só considera null ou inexistente. String vazia, zero e false passam. Isso costuma ser o que você quer ao ler configuração, onde zero é um valor legítimo.
// antes
$per_page = isset($args['per_page']) ? $args['per_page'] : 10;
// depois
$per_page = $args['per_page'] ?? 10;
// preenchendo defaults
$args['orderby'] ??= 'date';
$args['order'] ??= 'DESC';
Na prática: ?? para default, ??= para preencher argumento. Lembra que zero e string vazia passam.