iconv: Adjust `iconv_substr` PHP 8 compatibility
iconv: Adjust `iconv_substr` PHP 8 compatibility

`iconv_substr` is changed in [PHP 8.0 to return an empty string on out-of-bound offsets](https://php.watch/versions/8.0/substr-out-of-bounds).
This commit updates the tests with `@requires` annotatios and polyfill updates to make sure the return results are in line with native function behavior.

Related: #288

symfony/polyfill-iconv