Autoloads em PHP

Vou-vos falar da função de autoloads em PHP. Esta função permite que quando se aceder ao ficheiro, este carregue automaticamente as classes existentes, sem haver necessidade de fazer o include de cada uma das classes.

Para isso, é necessário, começar por chamar a função:

function __autoload($class_name) {

    include ‘classes/’.$class_name . ‘.php’;

}

Uma nota importante é que o nome do ficheiro deve ser igual ao nome da classe.

Deixo-vos aqui um exemplo prático

1. Comecem por criar um ficheiro "index.php"
2. Coloquem o seguinte código lá dentro

<?php

    function __autoload($class_name) {

        include ‘classes/’.$class_name . ‘.php’;

    }

    $obj = new MyClass(‘World’);

    echo $obj->Show();

3. Criem um directório chamado “classes”
4. Dentro do directório “classes” criem um ficheiro chamado “MyClass.php”
5. Por fim, coloquem dentro deste ficheiro o seguinte código

<?php

    class MyClass {

        private $name;

        public function __construct($name) {

            $this->name = $name;

        }

        public function __destruct() {

            unset($this->name);

        }

        public function Show() {

            return ‘Hello ‘.$this->name;

        }

}

Please follow and like us: