for ($i = 100; $i > 0; $i--) {
echo sprintf('%1$d %3$s of beer on the wall, %1$d %3$s of beer.<br>Take one down and pass it around, %2$d %4$s of beer on the wall<br>', $i, ($i-1), ($i==1) ? 'bottle' : 'bottles', (($i-1)==1) ? 'bottle' : 'bottles');
}
This will, to my knowledge, fix the grammar in the last verse