Persistência de Dados em PHP
1. O que é persistência de dados?
Persistência de dados é a capacidade de armazenar informações para utilizá-las posteriormente.
Imagine um sistema escolar em que um aluno realiza seu cadastro. Mesmo depois de fechar o navegador, seus dados precisam continuar salvos.
No PHP, podemos utilizar diferentes técnicas para armazenar informações:
- Armazenamento em arquivos
- Sessões
- Banco de dados
Banco de dados com servidor
2. Como surgiu a persistência de dados?
2.1. Arquivos — Décadas de 1950 e 1960
No início da computação, os programas armazenavam informações em arquivos, utilizando cartões perfurados, fitas magnéticas e, posteriormente, discos.
Com o tempo, tornou-se comum organizar dados em arquivos de texto.
Exemplo de um arquivo alunos.txt:
João;15
Maria;16
Pedro;15
No PHP, podemos salvar informações utilizando o comando abaixo:
file_put_contents("alunos.txt", "João;15");
Vantagem: simples de utilizar.
Desvantagem: difícil de pesquisar e organizar grandes quantidades de informações.
2.2. Bancos de dados — Décadas de 1960 e 1970
Com o crescimento dos sistemas, surgiu a necessidade de organizar melhor os dados.
Os bancos de dados permitiram armazenar informações de maneira estruturada. Na década de 1970, o modelo relacional trouxe a organização dos dados em tabelas.
Exemplo de uma tabela alunos:
| ID | Nome | Idade |
|---|---|---|
| 1 | João | 15 |
| 2 | Maria | 16 |
| 3 | Pedro | 15 |
Em 1995, surgiu o MySQL, que se tornou muito popular no desenvolvimento Web.
Utiliza a linguagem SQL para cadastrar, pesquisar, alterar e excluir informações.
Exemplo de consulta:
SELECT * FROM alunos;
Esse comando consulta todos os alunos cadastrados na tabela.
2.3. Sessões — Década de 1990
Com a popularização da Internet, os sites precisavam identificar os usuários enquanto navegavam entre diferentes páginas.
As sessões permitem guardar informações temporárias, como o nome de quem está conectado ao sistema.
Exemplo: navegação de um aluno
Login
Perfil
Notas
A sessão mantém o aluno identificado nas três páginas.
Exemplo em PHP:
session_start();
$_SESSION["nome"] = "João";
Para recuperar em outra página:
session_start();
echo $_SESSION["nome"];
Vantagem: mantém informações do usuário entre diferentes páginas.
Desvantagem: não é indicada para armazenar cadastros permanentemente.
2.4. SQLite — Ano 2000
O SQLite surgiu como uma alternativa simples para trabalhar com bancos de dados.
Diferentemente do MySQL, ele não precisa de um servidor de banco de dados separado. As informações ficam armazenadas em um arquivo.
Exemplo em PHP:
$pdo = new PDO("sqlite:escola.db");
Esse código abre ou cria um banco de dados chamado escola.db.
Vantagem: simples de configurar e utilizar.
Desvantagem: pode apresentar limitações quando muitos usuários tentam gravar informações ao mesmo tempo.
3. Linha do tempo da persistência de dados
- 1950–1960 — ArquivosArmazenamento em cartões, fitas e arquivos.
- 1960–1970 — Bancos de dadosSistemas para organizar e consultar informações.
- 1995 — MySQLBanco de dados que se popularizou na Web.
- Década de 1990 — Sessões WebArmazenamento temporário de informações dos usuários.
- 2000 — SQLiteBanco de dados que funciona sem servidor separado.
Observação: as sessões Web não substituíram os bancos de dados. São tecnologias com finalidades diferentes, que continuam sendo utilizadas em conjunto.
4. Tabela comparativa
| Característica | TXT | Sessão | SQLite | MySQL |
|---|---|---|---|---|
| Onde armazena? | Arquivo | Servidor | Arquivo de banco | Servidor de banco |
| Duração | Duradoura | Temporária | Duradoura | Duradoura |
| Usa SQL? | Não | Não | Sim | Sim |
| Facilidade | Fácil | Fácil | Fácil | Média |
| Uso principal | Dados simples | Login | Sistemas pequenos e médios | Sistemas Web |
5. Quando utilizar cada técnica?
TXT — Lista simples
Salvar uma lista de nomes ou registrar informações em arquivos.
Sessão — Login
Manter o usuário identificado enquanto utiliza o sistema.
SQLite — Cadastro local
Desenvolver um pequeno sistema de cadastro sem configurar um servidor de banco de dados.
MySQL — Sistema Web
Desenvolver sistemas escolares, lojas virtuais e aplicações com muitos usuários.
CÓDIGO 01: Criando arquivos TXT na linguagem PHP.

Explicação:
$arquivo— Define o nome do arquivo que será criado.$mensagem— Guarda o texto que será escrito.file_put_contents()— Cria o arquivo, caso não exista, e escreve a mensagem nele.echo— Exibe uma mensagem na página.
CÓDIGO 02: Criando um banco de dados SQLite e salvando uma mensagem nele.

Explicação:
new PDO()— Abre ou cria o banco de dadosmensagens.db.CREATE TABLE— Cria a tabelamensagens, caso ela ainda não exista.$mensagem— Armazena o texto que será salvo.INSERT INTO— Insere a mensagem na tabela.execute()— Executa o comando para salvar a informação.
Importante: para funcionar, o PHP precisa estar com a extensão pdo_sqlite habilitada no servidor WEB (Apache) e ter permissão para criar e escrever no arquivo do banco de dados.
CÓDIGO 03: Usando banco de dados Mysql para salvar uma mensagem.


ATIVIDADE DE LABORATÓRIO
- Utilizando o VS code, crie um arquivo chamado “arquivo.php” e salve ele na pasta “/var/www/html“. Em seguida, digite nele o CÓDIGO 01. Teste o código utilizando o navegador para acessar o servidor WEB local através do endereço: http://localhost
- Crie um novo arquivo chamado “sqlite.php“, salve ele na pasta “/var/www/html” e digite o CÓDIGO 02.
- Crie um novo arquivo chamado “mysql.php“, salve ele na pasta “/var/www/html” e digite o CÓDIGO 03.
- Após testar os códigos e verificar o correto funcionamento, copie eles para seu caderno separando em Código 01, 02 e 03