since you exploded by spaces, the variable $string is an array of 5 elements, each array element is a single word from your initial string. so $string[0] would hold the value "Hello".
within the foreach loop, $a holds the value of a single element from your $string array, one at a time. so on the first iteration $a holds the value "Hello". on the second it holds "this" and so on. also in a foreach loop, unless you need the key values, you can simplify what you wrote like this:
foreach($string as $a) { ... }
also, as mentioned, it's probably not necessary to use the & operator to pass those values by reference however it couldn't hurt if you're dealing with massive amounts of data as you said.
hope that helps.