PHP Caricamento manuale della classe con richiesta


Esempio

// Animal.php
class Animal {
    public function eats($food) {
         echo "Yum, $food!";
    }
}

// zoo.php
require 'Animal.php';
$animal = new Animal;
$animal->eats('slop');

// aquarium.php
require 'Animal.php';
$animal = new Animal;
$animal->eats('shrimp');

Qui abbiamo tre file. Un file ("Animal.php") definisce la classe. Questo file non ha effetti collaterali oltre a definire la classe e mantiene tutte le informazioni su un "animale" in un unico posto. È facilmente controllabile in versione. È facilmente riutilizzabile.

Due file utilizzano il file "Animal.php" require manualmente il file. Ancora una volta, PHP legge i file sorgente dall'alto verso il basso, quindi la richiesta va e trova il file "Animal.php" e rende disponibile la definizione della classe Animal prima di chiamare new Animal .

Ora immaginiamo di avere dozzine o centinaia di casi in cui volevamo eseguire un new Animal . Ciò richiederebbe (molti giochi di parole) molti, molti require affermazioni che sono molto noiose da codificare.