What is the difference between PHP’s mb_strolower() and IntlChar::tolower()?

I have been testing PHP’s mb_strtolower() and IntlChar::tolower() functions. By and large they give the same results, but I notice that they give different results for the Turkish dotted I ‘İ’: mb_strtolower() gives ‘i̇’ whereas IntlChar::tolower() gives ‘i’.

Would you expect them to give the same results? Or is there another method that would give the same result as mb_strtolower()? I’m looking for an alternative to mb_strtolower() when the mbstring extension isn’t available.