# stristr

(PHP 4, PHP 5)

stristr — Case-insensitive strstr()

### Description

string stristr ( string `$haystack` , string `$needle` , bool `$before_needle` )

Returns all of `haystack` from the first occurrence of `needle` to the end.

### Parameters

`haystack`

`needle`

  If `needle` is not a string, it is converted to an integer and applied as the ordinal value of a character.

`before_needle`

  If `TRUE` (the default is `FALSE`), stristr() returns the part of the `haystack` before the first occurence of the `needle` .

`needle` and `haystack` are examined in a case-insensitive manner.

### Return Values

Returns the matched substring. If `needle` is not found, returns `FALSE`.

### ChangeLog

Version | Description
--- | ---
6.0.0 | Added the `before_needle` parameter.
4.3.0 | stristr() was made binary safe.

### Examples

Example#1 stristr() example

`<?php
$email = 'USER@EXAMPLE.com';
echo stristr($email, 'e'); // outputs ER@EXAMPLE.com
echo stristr($email, 'e', true); // outputs US
?>`

Example#2 Testing if a string is found or not

`<?php
$string = 'Hello World!';
if(stristr($string, 'earth') === FALSE) {
echo '"earth" not found in string';
}
// outputs: "earth" not found in string
?>`

Example#3 Using a non "string" needle

`<?php
$string = 'APPLE';
echo stristr($string, 97); // 97 = lowercase a
// outputs: APPLE
?>`

### Notes

> Note: This function is binary-safe.

### See Also

- strstr()
- strrchr()
- substr()
- preg_match()