W pierwszym skrypcie masz jedno zapytanie, a w drugim 4, więc na pewno pierwszy jest lepszy.
Jeżeli na polu 'config_name' jest założony indeks lub jest to pole unikalne, to moim zdaniem zapytanie jest optymalne o ile w tabeli 'phpbb_config' są tylko dwie kolumny. Jeżeli jest ich więcej, to powinieneś zamiast 'SELECT * ' zastosować 'SELECT config_name,config_value', gdyż tylko te dwa pola wykorzysujesz.
Krótsza wersja (bez funkcji, gdyż zamiana powinna być zrobiona tylko raz po odczytaniu wszystkich wyników zapytania):
<?php
$statsq = mysql_query ("SELECT * FROM phpbb_config WHERE config_name IN ('visitors', 'topiccount', 'postcount', 'usercount')"); $html = '';
$html .= "{$row['config_name']} [<b>{$row['config_value']}</b>]<br>";
}
echo str_replace(array('postcount', 'topiccount', 'usercount', 'visitors'), array('Postów', 'Tematów', 'Użytkowników', 'Odwiedzono'), $html); ?>