Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] utf8_decode deprecated

Durante realização da aula apareceu a mensagem 'utf8_decode' is deprecated. Devo utilizar outra função ? arquivo-para-csv

também não funcionou no arquivo spl.php o utf8_encode: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Olá, Anthony. Tudo bem?

No PHP 8.2 as funções utf8_encode e utf8_decode foram descontinuadas.

Para você continuar o curso sem problemas, você pode utilizar a função mb_convert_encoding

Para converter o encoding, utilizaremos na seguinte maneira:

mb_convert_encoding($curso,"Windows-1252","UTF-8")
  • 1º parâmetro: string ou array que desejamos converter;
  • 2º parâmetro: para qual encoding desejamos converter
  • 3º parâmetro: qual é o encoding atual da string ou array que desejamos converter

No código do curso ficará da seguinte maneira:

<?php

$meusCursos = file('lista-cursos.txt');
$outrosCursos = file('cursos-php.txt');

$arquivoCsv = fopen('cursos.csv', 'w');

foreach ($meusCursos as $curso) {
    $linha = [trim(mb_convert_encoding($curso,"Windows-1252","UTF-8")), 'Sim'];

    fputcsv($arquivoCsv, $linha, ';');
}

foreach ($outrosCursos as $curso) {
    $linha = [trim(mb_convert_encoding($curso,"Windows-1252","UTF-8")), 'Não'];

    fputcsv($arquivoCsv, $linha, ';');
}

fclose($arquivoCsv);

No curso há uma atividade que fala sobre essa mudança: Para saber mais: PHP 8.2

Qualquer dúvida estou à disposição, bons estudos :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓