# strstr

(PHP 4, PHP 5, PHP 7, PHP 8)

strstr — Trouve la première occurrence dans une chaîne

### Description

strstr(string `$haystack`, string `$needle`, bool `$before_needle` = `false`): string|false

Retourne une sous-chaîne de `haystack`, allant de la première occurrence de `needle` (incluse) jusqu'à la fin de la chaîne.

> Note:

> strstr() est sensible à la casse. Pour une fonctionnalité identique, mais insensible à la casse, reportez-vous à stristr().

> Note:

> Si l'objectif est uniquement de déterminer si une certaine valeur de `needle` se trouve dans `haystack`, la fonction str_contains() qui est plus rapide et moins gourmande en mémoire devrait être utilisée à la place.

### Liste de paramètres

`haystack`

  La chaîne d'entrée.

`needle`

  La chaîne à rechercher.

  Antérieur à PHP 8.0.0, si `needle` n'est pas une chaîne de caractères, elle est convertie en un entier et appliqué en tant que valeur ordinal d'un caractère. Ce comportement est obsolète à partir de PHP 7.3.0, et se fier à celui-ci est fortement déconseillé. En fonction du comportement attendu, `needle` doit être transtypé explicitement en une chaîne de caractère, ou un appel explicite à chr() doit être exécuté.

`before_needle`

  Si vaut `true`, strstr() retourne la partie de `haystack` avant la première occurrence de `needle` (`needle` étant exclus).

### Valeurs de retour

Retourne la portion de la chaîne, ou `false` si `needle` n'est pas trouvé.

### Historique

Version | Description
--- | ---
8.0.0 | `needle` accepte désormais une chaîne vide.
8.0.0 | Passing an entier as `needle` is no longer supported.
7.3.0 | Passer un entier comme `before_needle` a été rendu obsolète.

### Exemples

Exemple #1 Exemple avec strstr()

`<?php
$email = 'name@example.com';
$domain = strstr($email, '@');
echo $domain, PHP_EOL; // Affiche : @example.com
$user = strstr($email, '@', true);
echo $user, PHP_EOL; // Affiche : name
?>`

### Voir aussi

- stristr() - Version insensible à la casse de strstr
- strrchr() - Trouve la dernière occurrence d'un caractère dans une chaîne
- strpos() - Cherche la position de la première occurrence dans une chaîne
- strpbrk() - Recherche un ensemble de caractères dans une chaîne de caractères
- preg_match() - Effectue une recherche de correspondance avec une expression rationnelle standard