strstr

Find the first occurrence of a string

Description

stringfalse strstr(string $haystack, string $needle, bool $before_needle = false)

Returns part of haystack string starting from and including the first occurrence of needle to the end of haystack.

Note:

This function is case-sensitive. For case-insensitive searches, use stristr.

Note:

If it is only required to determine if a particular needle occurs within haystack, the faster and less memory intensive str_contains function should be used instead.

Parameters

haystack

The input string.

needle

The string to search for.

Prior to PHP 8.0.0, if needle is not a string, it is converted to an integer and applied as the ordinal value of a character. This behavior is deprecated as of PHP 7.3.0, and relying on it is highly discouraged. Depending on the intended behavior, the needle should either be explicitly cast to string, or an explicit call to chr should be performed.

before_needle

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

Return Values

Returns the portion of string, or false if needle is not found.

Changelog

Version Description
8.0.0 needle now accepts an empty string.
8.0.0 Passing an int as needle is no longer supported.
7.3.0 Passing an int as needle has been deprecated.

Examples

Example #1 strstr example

<?php
$email  = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // prints @example.com

$user = strstr($email, '@', true);
echo $user; // prints name
?>

See Also

  • stristr
  • strrchr
  • strpos
  • strpbrk
  • preg_match