6

how to find if this string :

132,139,150,166,176

is in this one? :

132,139,150,166,176,131,140,151,165,175
codaddict
  • 445,704
  • 82
  • 492
  • 529
Ste
  • 1,497
  • 8
  • 33
  • 63

2 Answers2

13

You can use strpos function to find the occurrence of one string within another.

$str1 = '132,139,150,166,176,131,140,151,165,175';
$str2 = '132,139,150,166,176';

if( strpos($str1,$str2) !== false) {
   // $str2 exists within $str1.
}

Note that strpos will return 0 if $str2 is found at the beginning of $str1 which in fact is the case above and will return false if not found anywhere.

You must use the identity operator !== which checks both value and type to compare the return value with false because:

0 !== false is true 

where as

0 != false is false 
codaddict
  • 445,704
  • 82
  • 492
  • 529
2

You want strpos

strrpos("132,139,150,166,176,131,140,151,165,175","132,139,150,166,176");

If a string exists, its starting point will be returned from zero onward, if it is not present the result will be 'false'

SW4
  • 69,876
  • 20
  • 132
  • 137
  • The OP seems to be new to PHP. You should clarify that he should use an identity operator over an equality operator when using `strrpos`, to avoid pitfalls. – Stephen Nov 22 '10 at 16:30