PHP 8.6.0 Beta 3 is available for testing

mb_strpos

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_strposFind position of first occurrence of string in a string

Опис

function mb_strpos(
    string $haystack,
    string $needle,
    int $offset = 0,
    ?string $encoding = null
): int|false

Finds position of the first occurrence of needle in the haystack string.

Performs a multi-byte safe strpos() operation based on number of characters. The first character's position is 0, the second character position is 1, and so on.

Параметри

haystack

The string from which to get the position of the first occurrence of needle.

needle

The string to find in haystack. In contrast with strpos(), numeric values are not applied as the ordinal value of a character.

offset

The search offset in characters. If it is not specified, 0 is used. A negative offset counts from the end of the string.

encoding

Параметром encoding вказується кодування символів. Якщо він пропущений або null, використається внутрішнє кодування.

Значення, що повертаються

Returns the character position (not byte position) of the first occurrence of needle in the haystack string, counting from 0. Returns false if needle is not found.

Помилки/виключення

  • If offset is greater than the length of haystack, a ValueError will be thrown.

Журнал змін

Версія Опис
8.0.0 needle тепер може бути порожнім рядком.
8.0.0 encoding тепер може бути null.
7.1.0 Support for negative offsets has been added.

Приклади

Приклад #1 mb_strpos() returns a character offset, not a byte offset

<?php
// "🐘" is 4 bytes but 1 character; "é" is 2 bytes but 1 character
$str = "🐘H🐘é";

var_dump(mb_strpos($str, "é"));  // character 3, not byte 9
var_dump(mb_strpos($str, "🐘", 1)); // character 2, skipping the first "🐘"
?>

Поданий вище приклад виведе:

int(3)
int(2)

Прогляньте також

  • mb_strrpos() - Find position of last occurrence of a string in a string
  • mb_stripos() - Finds position of first occurrence of a string within another, case insensitive
  • mb_internal_encoding() - Set/Get internal character encoding
  • strpos() - Знаходить позицію першого входження підрядка в рядку

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top