Dear listmates, Please, let me start with an illustration to cut it short: input => output A: 3313 => 3313; B: 3313 => 3?13; ------------------------- 3 -> a variable-length character; 1 -> a one byte ascii character; ? -> a one byte ascii question mark (literaly)
That means when i output a constant (a string of variable-length characters) with an echo() function i normally get everything correct in a browser window. That makes a case A Sometimes (probability 1/(2-20)) i get a question mark instead of a particular variable-length character when the other variable-length characters are displayed correctly within the same page. This is case B Can someone please tell me what could be the cause of that. Personally i can imagine anything from a faulty hardware from the memory down the nic to a software error anywhere but the drivers. And i would rather like to narrow the scope. Thanks Nash More details for an instant: - Only characters read from a utf-8 encoded file with a function file_get_contents() seem to be displayed correctly at all times; - Characters that are read by the php.exe (please excuse me here) do fail once in a while - Interesting observation is that in case of a failure 'mbstring.internal_encoding' constant output by the phpinfo() changes from undefined to ISO - Even more interesting observation is that changing this 'mbstring.internal_encoding' and setting it to UTF-8 locally does not affect things to the better. A glimpse of the php settings: mb_internal_encoding("UTF-8"); ini_set('mbstring.internal_encoding', 'UTF-8'); ini_set('iconv.input_encoding', 'UTF-8'); ini_set('iconv.internal_encoding', 'UTF-8'); ini_set('iconv.output_encoding', 'UTF-8'); ini_set('default_charset', 'UTF-8'); ini_set('detect_unicode', 'Off'); ini_set('display_startup_errors', 'On'); ini_set('output_buffering', 'On'); ini_set('zlib.output_compression', 'Off');