spl_autoload_extensions în PHP

Setează sau citește extensiile de fișier încercate de autoloader-ul implicit spl_autoload.

Sintaxă
spl_autoload_extensions(?string $file_extensions = null): string

Ce face spl_autoload_extensions

Implicit, spl_autoload încearcă extensiile .inc și .php, în această ordine. Cu spl_autoload_extensions(".php") le schimbi pentru toate apelurile următoare. Fără parametru, funcția doar returnează valoarea curentă.

Parametri

Parametru Descriere
$file_extensions Opțional. Extensiile, cu punct, separate prin virgulă.

Ce returnează

Lista curentă de extensii, ca text.

Exemple

Exemplul 1: Citire și schimbare

<?php
echo spl_autoload_extensions() . "\n";

spl_autoload_extensions(".class.php,.php");
echo spl_autoload_extensions() . "\n";

file_put_contents("factura.class.php", '<?php class Factura {}');
spl_autoload_register();
var_dump(class_exists("Factura"));

Rezultat

.inc,.php
.class.php,.php
bool(true)

Greșeli frecvente

  • Pui spații după virgulă: ".php, .inc". Extensia devine " .inc", cu spațiu, și fișierul nu este găsit.

Comenzi înrudite

  • spl_autoload: Implementarea implicită de autoload: caută în include_path un fișier cu numele clasei scris cu litere mici.
  • spl_autoload_register: Înregistrează o funcție care încarcă automat fișierul unei clase prima dată când clasa este folosită.