Der Fehler liegt darin, dass PHP nach dem ersten $ einen gültigen Variablenamen sucht und nicht findet, du musst die erweiterte Syntax benutzen:
$counter = '1';
$f1 = 'ok';
$test = 'f'.$counter;
echo "{$$test}";
sollte funktionieren. Du kannst aber beim Echo in diesem Falle auch einfach nur
echo $$test;
schreiben ;)
Beachte auch, dass ich die " bei den ersten Strings durch ' ersetzt habe, da du dort keine Variablenerkennung und auch keine erweiterten Steuerzeichen brauchst und dem PHP-Interpreter so ein wenig Arbeit ersparst
Zu den verschiedenen String Modi gibt's hier die Erklärungen:
http://www.php.net/...age.types.string.php