PHP code example of toneladas / acl

1. Go to this page and download the library: Download toneladas/acl library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

toneladas / acl example snippets




$conn = new \PDO('sqlite::memory:');

$acl = new \Toneladas\Acl();
$acl->setWithDatabase($conn); // Objeto da PDO usado para conexão no banco de dados
$acl->setTable('usuarios'); // Nome da tabela usada no banco para guardar os usuários
$acl->setFieldUser('email'); // Nome do campo na tabela usado como o nome do usuário
$acl->setFieldPassword('senha'); // Nome do campo na tabela usado como a senha do usuário



$acl = new \Toneladas\Acl();
$this->acl->setWithDoctrine($entityManager); // Instancia do EntityManager do Doctrine
$this->acl->setEntity('\tests\Entities\User'); // Nome da entidade que refere-se a tabela de usuarios
$this->acl->setFieldUser('user'); // Nome no campo na tabela usado como o nome do usuário
$this->acl->setMethodPassword('getPassword'); // Metodo da entidade para pegar a senha



$acl->isEmail();

$acl->verify('usuario', '123'); // Irá jogar uma exception, pois 'usuario' não é um endereço de email válido



try {
  $acl->verify($usuario, $senha);

  // Deu tudo certo, seguimos em frente
} catch (\Exception $exp) {
  // Alguma coisa deu errada
}



try {
  $acl->verify($usuario, $senha);

  // Deu tudo certo, seguimos em frente
} catch (\Toneladas\Exceptions\UserWrongException $exp) {
  // O usuário não foi encontrado, então faço alguma coisa
} catch (\Toneladas\Exceptions\PasswordWrongException $exp) {
  // A senha está incorreta, então faço outra coisa
}