Distinguiamo tra variabili e indici di una matrice:
$qualcosa //<= variabile
$qualcosa = array(
'indice-uno' // <= indice di una matrice
=> 'valore',
'indice-due' // <= indice di una matrice
=> 'valore2',
);
altrimenti scrivibile in:
$qualcosa['indice-uno'] = 'valore';
Dal codice d'esempio che hai messo, sembra tu voglia accedere a due indici di una matrice, quindi dovresti fare:
$campo1 = "plafond";
$campo2 = "punteggio";
if($this->risultato[$campo1] > $this->risultato[$campo2]) { FACCIO DELLE COSE }
Altrimenti, se la variabile cambia, ma l'indice resta uguale puoi fare:
$campo1 = "risultato";
$campo2 = "risultato2";
if($this->{$campo1}['plafond'] > $this->{$campo2}['punteggio']) { FACCIO DELLE COSE }
Oppure, infine, se entrambi possono cambiare:
$campo1 = "risultato";
$campo2 = "risultato2";
$indice1 = 'plafond';
$indice2 = 'punteggio';
if($this->{$campo1}[$indice1] > $this->{$campo2}[$indice2]) { FACCIO DELLE COSE }