Skip to content

Início / Tutoriais / Boas práticas de programação

PSR-4: Autoloader

Foi definido o standard PSR-4 para o autoloader de classes pelo que é necessário seguir a seguinte metodologia:

  • O ficheiro /autoload.php substitui os atuais requires dos vários ficheiros (ex. func_*.php).
  • Todo o código deve ser trabalhado em classes conforme segue:
    • Dentro da pasta /includes/classes;
    • Criar as subpastas correspondem ao Namespace a atribuir a cada classe;
    • O nome do ficheiro que contém a classe deve seguir ".php";
    • As pastas/namespaces e as classes têm de ter a primeira letra maiúscula;
  • A chamada a estas classes deve prefixar o namespace \App que é o alias para a pasta includes/classes.
<?php
namespace App\TestFolder;

class Test {
    public function test() {
        echo "Called correctly.";
    }
}

Teste de chamada a uma classe já na nova metodologia.

<?php
require_once __DIR__ . "/autoload.php";

$tst = new \App\TestFolder\Test();

$tst->test();

Nesta fase inicial, o require_once poderá ser necessário em alguns processos mas muitos deles nem necessitam de tal.

Caso pretendam chamar a vossa Class dentro de outra, também podem utilizar o use tal como no exemplo abaixo.

<?php
require_once __DIR__ . "/autoload.php";

use \App\TestFolder\Test as Test;

$tst = new Test();

$tst->test();

(Última atualização: 08/11/2024 por Miguel Monteiro)