Voting

: four minus three?
(Example: nine)

The Note You're Voting On

deceze at gmail dot com ΒΆ
13 years ago
Please note that all the discussion about mb_str_replace in the comments is pretty pointless. str_replace works just fine with multibyte strings:

<?php

$string
= '漒字はユニコード';
$needle = 'は';
$replace = 'Foo';

echo
str_replace($needle, $replace, $string);
// outputs: ζΌ’ε­—Fooユニコード

?>

The usual problem is that the string is evaluated as binary string, meaning PHP is not aware of encodings at all. Problems arise if you are getting a value "from outside" somewhere (database, POST request) and the encoding of the needle and the haystack is not the same. That typically means the source code is not saved in the same encoding as you are receiving "from outside". Therefore the binary representations don't match and nothing happens.

<< Back to user notes page

To Top