Fala pessoal,
Pretendo falar um pouquinho mais sobre o CakePHP nós próximos dias… Espero que alguém leia e goste! Não vou começar com tutoriais básicos para iniciar com o Cake mas já vou falando de algumas coisas simples que todo mundo vai ler um dia. ![]()
Hoje vou mostrar como é uso dos métodos do component Session que te ajuda a manipular os valores salvos na sessão de forma mais segura e orientada à objetos.
Pegando todos os valores da sessão
Normalmente, fora do Cake, você trabalharia com a variável global $_SESSION… Agora, com o Cake, você nem precisa se lembrar do nome dela… Veja como pegamos todos os valores da sessão de dentro de um controller:
// Exibe todos os valores da sessão print_r($this->Session->read());
Se você não criou nem alterou algum valor da sessão o que será exibido vais e paracer com isso:
Array ( [Config] => Array ( [rand] => 262820453 [time] => 1161876896 [userAgent] => c7f575cbe5a4b7ad0efb748d54124611 ) )
Escrevendo valores na sessão
Agora é hora de fazer o component Session trabalhar pra gente e escrever alguns valores na sessão… Vamos salvar dois valores:
// Salva dois valores na sessão
$this->Session->write('usuarioID', 12);
$this->Session->write('usuarioNome', 'Thiago Belem');Viram que simples?
Lendo/recuperando valores da sessão
Depois de criar valores na sessão você óbviamente vai quere ler esses valores em algum lugar do controller ou da view… No controller faríamos assim:
// Recupera o valor da sessão
$usuario = $this->Session->read('usuarioID');Caso você queira pegar um valor da sessão dentro da view, é mais ou menos assim:
Seja bem vindo, <?php echo $session->read('usuarioNome'); ?>!Viram que simples? [2]
Destruindo a sessão
Quando o seu usuário fizer logout você provavelmente vai precisar/querer destruir a sessão dele para ele não continuar “dentro” do sistema… Então é só verificar se é uma sessão valida e o resto você manda pro espaço:
// Destruindo a sessão
if ($this->Session->valid()) {
$this->Session->destroy(); // Destrói
$this->redirect('/');// Redireciona o usuário
}Viram que simples? [3] ![]()
Existem outras formas e métodos no session component mas essas que eu dei de exemplo são, sem dúvida, as mais usadas e as necessárias para você fazer um bom sistema…
Espero que tenham gostado! ![]()
Você também vai gostar de ler:
- Aprendendo a usar sessões no PHP
- Traduzindo o nome dos meses no CakePHP
- Criando um sistema de logins com classe no PHP – Parte 3
- Resolvendo o problema de “headers already sent”
- Criando um sistema de logins com classe no PHP – Parte 2
Postado em CakePHP, PHP, Tutoriais
Com as tags CakePHP, PHP, POO, Scripts, Sessão, Session, Sessões, Sistema, Tutoriais, Tutorial
Escrito por Thiago Belem
Gostou desse artigo?
Não se esqueça de assinar o RSS e divulgue-o para o mundo:
