Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Opposite PHP function of strstr to return first part of string, not last

Tags:

string

php

strstr

I have an string, something like this:

$abcdef(+$1.00)

I'm trying to get the first part of the string before the first parenthesis:

$abcdef

Currently if I use strstr() it will return the part of the string after the specified character:

$newstr = strstr($var, '(');

I want the part before the occurrence. What is the reverse or opposite function of strstr() that will do that?

like image 833
bobbiloo Avatar asked May 22 '12 17:05

bobbiloo


2 Answers

Pass true as the third parameter.

From the manual page you have linked:

string strstr (string $haystack , mixed $needle [, bool $before_needle = false ])

before_needle: If TRUE, strstr() returns the part of the haystack before the first occurrence of the needle (excluding the needle).

Note: This parameter was only added in PHP 5.3. If for some reason you are left with an older version, a combination of substr() and strpos() should help:

$newstr = substr( $var, 0, strpos( $var, '(' ) );
like image 169
kapa Avatar answered Nov 03 '22 00:11

kapa


Set third parameter of strstr to true it will return occurrence before needle

like image 30
Ruben Nagoga Avatar answered Nov 02 '22 23:11

Ruben Nagoga