Причина, по которой он разделяется на новые строки, заключается в том, что вы помещаете их в него.Просто удалите <br>
s:
$test .='<a href="test.php?id='.$wordChunks[$i].'">'.$wordChunks[$i].'</a>';
EDIT
Вы можете сделать это в одной строке с помощью регулярного выражения:
$test = preg_replace(
'/(\S+)(\s*)/', // Find every collection of non-whitespace characters, which may or may not be followed by whitespace
'<a href="test.php?id=$1">$1</a>$2', // Replace it with a link and append whitespace, if any
htmlspecialchars($someWords, ENT_QUOTES) // pass the input string through htmlspecialchars() to avoid broken HTML
);
посмотреть, как работает