Fiz todo o procedimento passo a passo como explicado no video retirando os ' ; ' antes do "mbstring" e "extension=mbstring" e mesmo assim a instalação não foi efetuada . E também fiz a verificação para ver se está instalado e não está.Segue o código e erros .obs : Usando a versão mais recente 7.4.7
<?php
require_once 'funcoes.php';
$contasCorrentes = [
'123.456.789-10' => [
'titular' => 'Maria',
'saldo' => 10000
],
'123.456.689-11' => [
'titular' => 'Alberto',
'saldo' => 300
],
'123.256.789-12' => [
'titular' => 'Vinicius',
'saldo' => 100
]
];
$contasCorrentes['123.456.789-10'] = sacar(
$contasCorrentes['123.456.789-10'],
500
);
$contasCorrentes['123.456.689-11'] = sacar(
$contasCorrentes['123.456.689-11'],
200
);
$contasCorrentes['123.256.789-12'] = depositar(
$contasCorrentes['123.256.789-12'],
900
);
titularComLetrasMaiusculas($contasCorrentes['123.256.789-12']);
foreach ($contasCorrentes as $cpf => $conta) {
exibeMensagem(
"$cpf {$conta['titular']} {$conta['titular']}"
);
}
<?php
function sacar(array $conta, float $valorASacar): array { if ($valorASacar > $conta['saldo']) { exibeMensagem("Você não tem saldo suficiente"); } else { $conta['saldo'] -= $valorASacar; }
return $conta;
}
function exibeMensagem(string $mensagem) { echo $mensagem . PHP_EOL; }
function depositar(array $conta, float $valorADepositar): array { if ($valorADepositar > 0) { $conta['saldo'] += $valorADepositar; } else { exibeMensagem("Depositos precisam ser positivos"); } return $conta; }
function titularComLetrasMaiusculas(array $conta) { $conta['titular'] = mb_strtoupper($conta['titular']); }
Fatal error: Uncaught Error: Call to undefined function mb_strtoupper() in C:\Users\AVELL\Documents\Programação\php\avancando\funcoes.php:32
Stack trace:
#0 C:\Users\AVELL\Documents\Programação\php\avancando\banco.php(35): titularComLetrasMaiusculas(Array)
#1 {main}
thrown in C:\Users\AVELL\Documents\Programação\php\avancando\funcoes.php on line 32
C:\Users\AVELL>php -a
Interactive shell
php > echo extension_loaded('mbstring');
php >
;extension=bz2
;extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
;extension_dir = "./"
; On windows:
extension_dir = "ext"