Includes

From A-Eskwiki
Jump to: navigation, search

Stel dat je (bijvoorbeeld) een nieuwe View hebt gemaakt, dan moet je die niet vergeten te includen! (Als dat niet automagisch al is gebeurd) Dat doe je door het bestand www/WhosWho4/includes-nongenerated.php aan te passen. Voor een gegeven klassenaam doet de functie wsw4_nongenerated_autoload de nodige importering. Bijvoorbeeld als je de klasse IOUView nodig hebt:

   case 'IOUView':
     require_once('WhosWho4/IOU/IOUView.php');
     break;

Automagische includes

Je kan op 2 manieren automatisch includen:

  • je voegt een klasse toe in de dia. Dan worden de files met Bla, BlaView, BlaVerzameling, etc. automatisch geincluded
  • je stopt een klasse in een namespace die in composer.json staat.

Lees de PHP-standaard PSR-4 om dit precies te begrijpen, maar het idee is dat we namespaces zoals WhosWho4 en Space registreren als bevat in een bepaalde map, en als je klassen in het corresponderende PHP-bestand zet, worden die automatisch geladen (dit heet autoloading) bij de eerste keer dat die nodig is. Bijvoorbeeld de klasse \Space\Auth is te vinden in www/space/Auth.php, en wordt geautoload omdat in de composer.json staat dat de namespace Space correspondeert met de map www/space.