# grapheme_strrpos

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)

grapheme_strrpos — Find position (in grapheme units) of last occurrence of a string

### Description

Procedural style

grapheme_strrpos ( string `$haystack` , string `$needle` [, int `$offset` = 0 ] ) : int

Find position (in grapheme units) of last occurrence of a string

### Parameters

`haystack`

  The string to look in. Must be valid UTF-8.

`needle`

  The string to look for. Must be valid UTF-8.

`offset`

  The optional $offset parameter allows you to specify where in $haystack to start searching as an offset in grapheme units (not bytes or characters). The position returned is still relative to the beginning of haystack regardless of the value of $offset.

### Return Values

Returns the position as an integer. If needle is not found, grapheme_strrpos() will return boolean FALSE.

### Examples

Example #1 grapheme_strrpos() example

`<?php
$char_a_ring_nfd = "a\xCC\x8A"; // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
print grapheme_strrpos( $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_o_diaeresis_nfd, $char_o_diaeresis_nfd);
?>`

The above example will output:

    2

### See Also

- grapheme_stripos() - Find position (in grapheme units) of first occurrence of a case-insensitive string
- grapheme_stristr() - Returns part of haystack string from the first occurrence of case-insensitive needle to the end of haystack
- grapheme_strpos() - Find position (in grapheme units) of first occurrence of a string
- grapheme_strripos() - Find position (in grapheme units) of last occurrence of a case-insensitive string
- grapheme_strstr() - Returns part of haystack string from the first occurrence of needle to the end of haystack
- » Unicode Text Segmentation: Grapheme Cluster Boundaries