mb_strcut

Get part of string

Description

string mb_strcut(
    string $string,
    int $start,
    intnull $length = null,
    stringnull $encoding = null
)

mb_strcut extracts a substring from a string similarly to mb_substr, but operates on bytes instead of characters. If the cut position happens to be between two bytes of a multi-byte character, the cut is performed starting from the first byte of that character. This is also the difference to the substr function, which would simply cut the string between the bytes and thus result in a malformed byte sequence.

Parameters

string

The string being cut.

start

If start is non-negative, the returned string will start at the start'th byte position in string, counting from zero. For instance, in the string 'abcdef', the byte at position 0 is 'a', the byte at position 2 is 'c', and so forth.

If start is negative, the returned string will start at the start'th byte counting back from the end of string. However, if the magnitude of a negative start is greater than the length of the string, the returned portion will start from the beginning of string.

length

Length in bytes. If omitted or NULL is passed, extract all bytes to the end of the string.

If length is negative, the returned string will end at the length'th byte counting back from the end of string. However, if the magnitude of a negative length is greater than the number of characters after the start position, an empty string will be returned.

encoding

The encoding parameter is the character encoding. If it is omitted or null, the internal character encoding value will be used.

Return Values

mb_strcut returns the portion of string specified by the start and length parameters.

Changelog

Version Description
8.0.0 encoding is nullable now.

See Also

  • mb_substr
  • mb_internal_encoding