Proposta:
Praticar é muito importante! Por isso, preparamos um exercício para você exercitar o conteúdo abordado nesta aula. No arquivo que possui a mensagem de sucesso após exportar o arquivo, leia o arquivo exportado e exiba todas as informações do filme.
Resolução do instrutor:
<?php
$conteudoArquivoJson = file_get_contents('filme.json');
$filme = json_decode($conteudoArquivoJson, true);
?>
<!DOCTYPE html>
<html>
<head>
<title>Filme inserido</title>
</head>
<body>
<h1><?= $filme['nome']; ?></h1>
<dl>
<dt>Ano de lançamento</dt>
<dd><?= $filme['anoLancamento']; ?></dd>
<dt>Nota</dt>
<dd><?= $filme['nota']; ?></dd>
<dt>Gênero</dt>
<dd><?= $filme['genero']; ?></dd>
</dl>
</body>
</html>
Boa noite! Tentei inovar, mas sei se deu muito certo hahaha.
No arquivo, funcoes.php, criei a função "getsFilme":
function getsFilme(string $nomeFilmeDesejado) {
$contentJson = file_get_contents(__DIR__ . '/../filme.json');
$contentJsonConverted = json_decode($contentJson, true);
if (isset($contentJsonConverted['nome']) && $contentJsonConverted['nome'] === $nomeFilmeDesejado) {
return $contentJsonConverted;
}
// Aqui deu bom pq tem só um filme no Json, se precisar de mais precisa mudar a implementação
}
Fiz a inclusão desse arquivo utilizando o include_once:
<?php
include_once(__DIR__ . '/../src/funcoes.php');
$filme = getsFilme($_GET['filme']);
?>
O meu argumento inicial era:
Vou remover as informações brutas do .json e as responsabilidades de tratar ele para um local mais seguro ao invés do sucesso.php, que está sendo tratado em uma pasta "public";
Porém, não sei se isso de fato tiraria a visibilidade do .json de uma pessoa maliciosa com os devidos conhecimentos técnicos. Outra coisa que percebi também é a lentidão enorme(UNS 4 segundos, mas para a web acho que é lento, ainda mais com 1 requisição kkkk) em toda vez que cadastrado um novo filme até que seja mostrada a tela de sucesso.
Como ficou ao final a estrutura: