Eu fiz alguma coisa errada?
Eu fiz alguma coisa errada?
Boa tarde Eduardo, tudo bem?
Creio que isto esteja acontecendo porque falta um operador de referência "&" antes do parâmetro '$conta'. Desse jeito:
function titularComLetrasMaiusculas (array &$conta)
{
$conta['titular'] = mb_strtoupper($conta['titular']);
}
Dentro das funções, ao passar um parâmetro sem o operador "&", você apenas manipula uma cópia do parâmetro real. Já quando você utiliza o operador de referência "&", você passa a manipular as variáveis diretamente pela função.
Manipular variáveis por referência em uma função não é muito recomendado, portanto uma solução alternativa seria fazer algo como:
function titularComLetrasMaiusculas (array $conta) :string
{
return mb_strtoupper($conta['titular']);
}
$contasCorrentes['123.256.789-12']['titular'] = titularComLetrasMaiusculas($contasCorrentes['123.256.789-12']);
Espero que tenha te ajudado Eduardo!