How do I remove everything after a space in PHP?
Do this, this replaces anything after the space character. Can be used for dashes too:
$str=substr($str, 0, strrpos($str, ' '));
Just to add it into the mix, I recently learnt this technique:
list($s) = explode(' ',$s);
I just did a quick benchmark though, because I've not come across the strtok method before, and strtok is 25% quicker than my list/explode solution, on the example strings given.
Also, the longer/more delimited the initial string, the bigger the performance gap becomes. Give a block of 5000 words, and explode will make an array of 5000 elements. strtok will just take the first "element" and leave the rest in memory as a string.
So strtok wins for me.
$s = strtok($s,' ');
Try this
<?php
$x = "Laura Smith";
echo strtok($x, " "); // Laura
?>
strtok
There is no need to use regex, simply use the explode method.
$item = explode(" ", $x);
echo $item[0]; //Laura