Bom dia,
Tive o prazer de aprender isto na prática e após RTFM.
Sintomas: No navegador aparecia caracteres estranhos das informações trazidas do banco.
Padrão: Página com header determinando padrão iso-8859-1, banco de dados em iso-8859-1, apache, php 5.5, Mariadb 10.
Solução:
Fiz o ajuste de charset no servidor web tanto para utf8 quanto iso-8859-1, mesmo erro de charset no navegador.
Fiz ajuste na conexão ao banco mysql tanto para utf8 quanto iso-8859-1, mesmo erro de charset no navegador.
Após incontáveis horas notei que ao exibir o código fonte renderizado no navegado sempre vinha em utf8.
Fiz um RTFM no manual do php a procura de mudanças.
Achei isto no core do php:
"default_charset string: In PHP 5.6 onwards, “UTF-8” is the default value and its value is used as the default character encoding for htmlentities(), html_entity_decode() and htmlspecialchars() if the encoding parameter is omitted. The value of default_charset will also be used to set the default character set for iconv functions if the iconv.input_encoding, iconv.output_encoding and iconv.internal_encoding configuration options are unset, and for mbstring functions if the mbstring.http_input mbstring.http_output mbstring.internal_encoding configuration option is unset.
All versions of PHP will use this value as the charset within the default Content-Type header sent by PHP if the header isn't overridden by a call to header().
[b]Setting default_charset to an empty value is not recommended[/b]."
Ou seja agora vem habilitado no php.ini a diretiva “default_charset string”.
Ela estava como utf8 que é o valor default.
E pelo visto à partir do php 5.6 algumas funções irão trabalhar como padrão utf8.
Ou seja se quiser usar iso-8859-1 nestas funções tem que especificar.
E não é bom deixar desabilitado esta diretiva segundo o manual do php.
Mesmo, assim desabilitei o default_charset string no php.ini e o navegador apresentou os acentos corretamente.
Moral da história: Ou você migra agora para utf8 ou mais tarde terá que mexer no seu código fonte para que algumas funções apresentem o caractere correto.
Espero ser útil há algum de vocês.