Recommandé : "Tutoriel vidéo PHP"
Premier coup d'oeil au répertoire de fichiers existant

DOCUMENT_ROOR est / répertoire home/www
Regardez ensuite le contenu du fichier d'entrée
<?php
$controll_action = $_GET['_ca_'];
$params = explode('/',$controll_action);
$params_count = count($params);
$otherParams = $params;
if($params_count>1) {
$controller = $params[0];
$action = $params[1];
unset($params[0]);
unset($params[1]);
}else if($params_count==1) {
$controller = $params[0];
$action = 'index';
unset($params[0]);
}
$filename = strtolower($controller).'.php';
$controller_path = $_SERVER['DOCUMENT_ROOT'].'/application/controllers/';
if(!file_exists($controller_path.$filename)) {
throw new Exception('controller '.$filename.' is not exists!');
return;
}
include($controller_path.$filename);
$classname = ucfirst($controller);
if(!class_exists($classname)) {
throw new Excpetion('class '.$classname.' is not exists!');
}
$reflecObj = new ReflectionClass($classname);
if(!$reflecObj->hasMethod($action)){
throw new Exception('method '.$action.' is not exists!');
}
$currentObj = new $classname();
echo "classname=$classname,action=$action,params=".json_encode($params)."<br/>";
call_user_func_array([$currentObj,$action],$params);
return;
?>Puis créez un simple contrôleur user.php et mettez-le dans le répertoire applicaiton/controllers/ avec le spécifique contenu Comme suit :
<?php
class User {
function __construct(){
}
public function index($name='')
{
echo 'hello,'.$name.',lucky,you are arrive here!';
}
}Testez enfin un saut de contrôleur correct et un saut de contrôleur incorrect
Testez d'abord le processus correct : http://192.168.1.99/user /index/xiaoming
Contenu de sortie :
classname=User,action=index,params={"2":"xiaoming"}
hello,xiaoming,lucky,you are arrive here!Testez à nouveau le contrôleur inexistant, http://192.168.1.99/account/index/xiaoming
Fatal error: Uncaught exception 'Exception' with message 'controller acount.php is not exists!' in /home/www/webroot/index.php:25Stack trace:#0 {main} thrown in
/home/www/webroot/index.php on line 25Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Comment ouvrir le fichier php
Comment supprimer les premiers éléments d'un tableau en php
Que faire si la désérialisation php échoue
Comment connecter PHP à la base de données mssql
Comment connecter PHP à la base de données mssql
Comment télécharger du HTML
Comment résoudre les caractères tronqués en PHP
Comment ouvrir des fichiers php sur un téléphone mobile