This works fine:
<?php
$buffer = "a b c d e";
$thearray=split("[ ]+", $buffer);
echo "<pre>";
print_r($thearray);
echo "</pre>";
?>
(your code copied)
Are you sure there are only spaces there? Not, for example, tabs?
With only spaces, this is fine as well:
$thearray=split(" +", $buffer);
With other "space-like" characters (tabs, line feeds,...):
$thearray=split("[[:space:]]+", $buffer);