| 
<?php// J:\awww\www\fwphp\glomodul\z_examples\02_MVC\02hopkins_2009_clickme\index.php
 // M-V DATA FLOW based on Callum Hopkins https://github.com/kenirwin/BasicMVC_PHP
 //         https://www.sitepoint.com/the-mvc-pattern-and-php-1/ and 2
 
 namespace B12phpfw\clickmeModule ; //FUNCTIONAL NAME SPACING (not dir names ee positional)
 // USE is not needed if all scripts have same name space !
 //use B12phpfw\clickmeModule\Autoloader as Autoloader ;
 
 require_once __DIR__ . "/Autoloader.php";
 spl_autoload_register('B12phpfw\\clickmeModule\\Autoloader::autoload');
 
 $m = new m();
 $c = new c($m); //includes m
 $v = new v($m); //$v = new v($c, $m); // $c is not needed in v ? (bad logic ?)
 
 /**
 * code flow STEP 2. R O U T E R
 * we added functionality (ee link) to C, thereby adding INTERACTIVITY to app.
 * ROUTING IS NOT NEEDED IF THERE IS NO USER INTERACTIONS (ee links) :
 */
 $ctrakcmethod = 'clicked';
 if ( isset($_GET['action']) and !empty($_GET['action']) )   {
 $c->{$_GET['action']}(); //call c.clicked()
 $ctrakcmethod = '';
 }
 // E N D  code STEP 2.
 
 echo $v->out($ctrakcmethod);
 
 
 // J:\awww\apl\dev1\aplw\tests\L1hopkins_2009_clickme\index.php
 // http://dev1:8083/aplw/tests/L1hopkins_2009_clickme/
 //if no spl_autoload_register : aplw\tests dir must be in composer.json !
 
 
 /*
 spl_autoload_register( function($class) {
 $ns_vendor_module = 'B12phpfw\\clickmeModule' ;
 
 //$cls_script_path_external_m = $_SERVER['DOCUMENT_ROOT'].'/vendor/autoload.php';
 
 $cls_script_path_module = __DIR__ .'/'
 . str_replace( [$ns_vendor_module,'\\'] //substrings to replace
 , ['', '/']            //replacements
 , $class               //in string
 ).'.php';                             //append cls script extension
 
 
 switch (true) {
 //case file_exists($cls_script_path_external_m):
 //  include_once $cls_script_path_external_m ;
 //  break;
 case file_exists($cls_script_path_module):
 include_once $cls_script_path_module ;
 break;
 default:
 echo '<pre>'; print_r('Namespaced class '. $class .' does not exist'); echo '</pre>';
 break;
 }
 
 
 });
 //require $_SERVER['DOCUMENT_ROOT'].'/vendor/autoload.php'; //for external modules
 */
 
 |