I have a database that has names and I want to use PHP replace after the space on names, data example:
$x="Laura Smith";
$y="John. Smith"
$z="John Doe";
I want it to return
Laura
John.
John
I have a database that has names and I want to use PHP replace after the space on names, data example:
$x="Laura Smith";
$y="John. Smith"
$z="John Doe";
I want it to return
Laura
John.
John
There is no need to use regex, simply use the explode method.
You can do also like this
Do this, this replaces anything after the space character. Can be used for dashes too:
This answer will remove everything after the first space and not the last as in case of accepted answer.Using
strpos
andsubstr
Just to add it into the mix, I recently learnt this technique:
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.
Try this
strtok