str_starts_with

(PHP 8)

str_starts_withChecks if a string starts with a given substring

Description

str_starts_with(string $haystack, string $needle): bool

Performs a case-sensitive check indicating if haystack begins with needle.

Liste de paramètres

haystack

The string to search in.

needle

The substring to search for in the haystack.

Valeurs de retour

Returns true if haystack begins with needle, false otherwise.

Exemples

Exemple #1 Using the empty string ''

<?php
if (str_starts_with('abc''')) {
    echo 
"All strings start with the empty string";
}
?>

L'exemple ci-dessus va afficher :

All strings start with the empty string

Exemple #2 Showing case-sensitivity

<?php
$string 
'The lazy fox jumped over the fence';

if (
str_starts_with($string'The')) {
    echo 
"The string starts with 'The'\n";
}

if (
str_starts_with($string'the')) {
    echo 
'The string starts with "the"';
} else {
    echo 
'"the" was not found because the case does not match';
}

?>

L'exemple ci-dessus va afficher :

The string starts with 'The'
"the" was not found because the case does not match

Notes

Note: Cette fonction gère les chaînes binaires.

Voir aussi

  • str_contains() - Determine if a string contains a given substring
  • str_ends_with() - Checks if a string ends with a given substring
  • stripos() - Recherche la position de la première occurrence dans une chaîne, sans tenir compte de la casse
  • strrpos() - Cherche la position de la dernière occurrence d'une sous-chaîne dans une chaîne
  • strripos() - Cherche la position de la dernière occurrence d'une chaîne contenue dans une autre, de façon insensible à la casse
  • strstr() - Trouve la première occurrence dans une chaîne
  • strpbrk() - Recherche un ensemble de caractères dans une chaîne de caractères
  • substr() - Retourne un segment de chaîne
  • preg_match() - Effectue une recherche de correspondance avec une expression rationnelle standard

add a note add a note

User Contributed Notes 2 notes

up
12
Paul Phillips
3 years ago
You can use this in PHP versions less than 8.

<?php
function str_starts_with ( $haystack, $needle ) {
  return
strpos( $haystack , $needle ) === 0;
}
up
0
jgusta
3 years ago
With credit to Paul Phillips for the original polyfill posted.

If you do not have PHP 8, you can use these functions to get the capability of the new string functions.

But! Remember to use a conditional check to make sure the function is not already defined.

<?php
// source: Laravel Framework
// https://github.com/laravel/framework/blob/8.x/src/Illuminate/Support/Str.php
if (!function_exists('str_starts_with')) {
    function
str_starts_with($haystack, $needle) {
        return (string)
$needle !== '' && strncmp($haystack, $needle, strlen($needle)) === 0;
    }
}
if (!
function_exists('str_ends_with')) {
    function
str_ends_with($haystack, $needle) {
        return
$needle !== '' && substr($haystack, -strlen($needle)) === (string)$needle;
    }
}
if (!
function_exists('str_contains')) {
    function
str_contains($haystack, $needle) {
        return
$needle !== '' && mb_strpos($haystack, $needle) !== false;
    }
}
?>

This keeps it from breaking in case you upgrade and forget that you added it. This is a good practice generally when using the global scope for your helper functions.
To Top