strripos

Find the position of the last occurrence of a case-insensitive substring in a string

&reftitle.description; ``int``false```strripos` `string` `haystack` `string` `needle` `int` `offset` 0

Find the numeric position of the last occurrence of `needle` in the `haystack` string.

Unlike the `strrpos`, `strripos` is case-insensitive.

&reftitle.parameters;

`haystack`

- The string to search in.

`needle`

- The string to search for.

  &strings.parameter.needle.non-string;

`offset`

- If zero or positive, the search is performed left to right skipping the first `offset` bytes of the `haystack`.

  If negative, the search is performed right to left skipping the last `offset` bytes of the `haystack` and searching for the first occurrence of `needle`.

  This is effectively looking for the last occurrence of `needle` before the last `offset` bytes.

&reftitle.returnvalues;

Returns the position where the needle exists relative to the beginnning of the `haystack` string (independent of search direction or offset).

String positions start at 0, and not 1.

Returns &false; if the needle was not found.

&return.falseproblem;
&reftitle.changelog;

&Version; | &Description;
&strings.changelog.ascii-case-folding; &strings.changelog.needle-empty;
8.0.0 | Passing an &integer; as `needle` is no longer supported.
7.3.0 | Passing an &integer; as `needle` has been deprecated.

&reftitle.examples;

### A simple `strripos` example

    <?php
    $haystack = 'ababcd';
    $needle   = 'aB';

    $pos      = strripos($haystack, $needle);

    if ($pos === false) {
        echo "Sorry, we did not find ($needle) in ($haystack)";
    } else {
        echo "Congratulations!\n";
        echo "We found the last ($needle) in ($haystack) at position ($pos)";
    }
    ?>

&example.outputs;

       Congratulations!
       We found the last (aB) in (ababcd) at position (2)

&reftitle.seealso;

- `strpos`
- `stripos`
- `strrpos`
- `strrchr`
- `stristr`
- `substr`