<?php
$original_multibyte_string = 'țată în HERE';
$a_non_multibyte_str_same_length = '123456789HERE';
// HERE is on 10th (9th element) character
echo 'strpos finds HERE in multibyte at: '.strpos($original_multibyte_string,'HERE').' '.'strpos finds HERE in non-multibyte at: '.strpos($a_non_multibyte_str_same_length,'HERE');
// OUTPUTS: strpos finds HERE in multibyte at: 12 strpos finds HERE in non-multibyte at: 9
echo "\n";
// now lets test the multibyte:
echo 'mb_strpos finds HERE in multibyte at: '.mb_strpos($original_multibyte_string,'HERE',0,'UTF-8').' '.'mb_strpos finds HERE in non-multibyte at: '.mb_strpos($a_non_multibyte_str_same_length,'HERE',0,'UTF-8');
// OUTPUTS: mb_strpos finds HERE in multibyte at: 9 mb_strpos finds HERE in non-multibyte at: 9
strpos finds HERE in multibyte at: 12 strpos finds HERE in non-multibyte at: 9
mb_strpos finds HERE in multibyte at: 9 mb_strpos finds HERE in non-multibyte at: 9
Output for 5.1.0
Fatal error: fatal flex scanner internal error--end of buffer missed in /in/ksYal on line 14
Process exited with code 255.