Maison développement back-end tutoriel php PHP整合你的站点入口_PHP

PHP整合你的站点入口_PHP

Jun 01, 2016 pm 12:30 PM
function Entrée 整合 文件 site 网站 解析 路径

大家也许经常在网上看到这样的路径(http://www.aaa.com/aaa/bbb/aaa?id=5),让人不解,这样的网站的实现方式有几种可能性:
1、隐藏文件的扩展名,对这种做法的好处,众说纷纭,不过个人觉得没有必要;
2、用了网站的重定向规则,实现虚拟路径;
3、强制文件解析的方式,实现虚拟路径。
用第2\3种方法可以实现网站的统一接口,合理的整合网站,更好的体现网站的安全性和架构,用这两种方式的网站大多是使用"MVC"模式构建和实现的。

下面是一个例子
访问路径如下:

....../test/*******/Bad
....../test/*******/Good
(其中的"******"可以用任何字符串替换,"......."是你的web路径)


文件的目录结构如下
|--.htaccess
|-- test
|-- Application.php
|-- Controler/GoodControler.php
|-- Controler/BadControler.php


注意文件".htaccess",在windows下不能直接建立的,可以在命令行模式下建立.

文件0 (.htaccess) (这个文件是更改apache的配置方式用的)

forcetype application/x-httpd-php


文件1 (test.php)
/*-------------------------------------
* test.php
*
* 作为你的网站的入口的文件
* 用来初始化和入口
* 调用执行Controler的调用
*
-------------------------------------*/
require "Application.php";
$aa = new Application();
$aa->parse();
$aa->go();

?>


文件2 (GoodControler.php)
/*-------------------------------------
* GoodControler.php
*
* 用来控制 url=/test/Good 来的访问
*
-------------------------------------*/
class GoodControler{
/*
* 控制类的调用方法,唯一的报漏给外部的接口
*/
function control(){
echo "this is from GoodControler url=*********/test/Good";
}
}
?>


文件3 (BadControler.php)
/*-------------------------------------
* BadControler.php
*
* 用来控制 url=/test/Bad 来的访问
*
-------------------------------------*/
class BadControler{
/*
* 控制类的调用方法,唯一的报漏给外部的接口
*/
function control(){
echo "this is from GoodControler url=*********/test/Bad";
}
}
?>


文件4 (Application.php)
/*-------------------------------------
* Application.php
*
* 用来实现网站的统一入口,调用Controler类
*
-------------------------------------*/
class Application{
//用来记录所要进行的操作
var $action;
//controler文件的路径名
var $controlerFile;
//controler的类名
var $controlerClass;

function Application(){
}

function parse(){
$this->_parsePath();
$this->_getControlerFile();
$this->_getControlerClassname();
}
/*
* 解析当前的访问路径,得到要进行动作
*/
function _parsePath(){
list($path, $param) = explode("?", $_SERVER["REQUEST_URI"]);
$pos = strrpos($path, "/");
$this->action = substr($path, $pos 1);
}
/*
* 通过动作$action,解析得到该$action要用到的controler文件的路径
*/
function _getControlerFile(){
$this->controlerFile = "./Controler/".$this->action."Controler.php";
if(!file_exists($this->controlerFile))
die("Controler文件名(".$this->controlerFile.")解析错误");
require_once $this->controlerFile;
}
/*
* 通过动作$action,解析得到该$action要用到的controler类名
*/
function _getControlerClassname(){
$this->controlerClass = $this->action."Controler";
if(!class_exists($this->controlerClass))
die("Controler类名(".$this->controlerClass.")解析错误");
}
/*
* 调用controler,执行controler的动作
*/
function go(){
$c = new $this->controlerClass();
$c->control();
}
}
?>
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment transférer des fichiers de Quark Cloud Disk vers Baidu Cloud Disk ? Comment transférer des fichiers de Quark Cloud Disk vers Baidu Cloud Disk ? Mar 14, 2024 pm 02:07 PM

Quark Netdisk et Baidu Netdisk sont actuellement les logiciels Netdisk les plus couramment utilisés pour stocker des fichiers. Si vous souhaitez enregistrer les fichiers de Quark Netdisk sur Baidu Netdisk, comment procéder ? Dans ce numéro, l'éditeur a compilé les étapes du didacticiel pour transférer des fichiers d'un ordinateur Quark Network Disk vers Baidu Network Disk. Voyons comment le faire fonctionner. Comment enregistrer les fichiers du disque réseau Quark sur le disque réseau Baidu ? Pour transférer des fichiers de Quark Network Disk vers Baidu Network Disk, vous devez d'abord télécharger les fichiers requis depuis Quark Network Disk, puis sélectionner le dossier cible dans le client Baidu Network Disk et l'ouvrir. Ensuite, faites glisser et déposez les fichiers téléchargés depuis Quark Cloud Disk dans le dossier ouvert par le client Baidu Cloud Disk, ou utilisez la fonction de téléchargement pour ajouter les fichiers sur Baidu Cloud Disk. Assurez-vous de vérifier si le fichier a été transféré avec succès dans Baidu Cloud Disk une fois le téléchargement terminé. C'est ça

Que faire si le code d'erreur 0x80004005 apparaît. L'éditeur vous apprendra comment résoudre le code d'erreur 0x80004005. Que faire si le code d'erreur 0x80004005 apparaît. L'éditeur vous apprendra comment résoudre le code d'erreur 0x80004005. Mar 21, 2024 pm 09:17 PM

Lors de la suppression ou de la décompression d'un dossier sur votre ordinateur, une boîte de dialogue d'invite « Erreur 0x80004005 : erreur non spécifiée » apparaît parfois. Comment devez-vous résoudre cette situation ? Il existe en fait de nombreuses raisons pour lesquelles le code d'erreur 0x80004005 est demandé, mais la plupart d'entre elles sont causées par des virus. Nous pouvons réenregistrer la DLL pour résoudre le problème. Ci-dessous, l'éditeur vous expliquera l'expérience de gestion du code d'erreur 0x80004005. . Certains utilisateurs reçoivent le code d'erreur 0X80004005 lors de l'utilisation de leur ordinateur. L'erreur 0x80004005 est principalement due au fait que l'ordinateur n'enregistre pas correctement certains fichiers de bibliothèque de liens dynamiques ou à un pare-feu qui n'autorise pas les connexions HTTPS entre l'ordinateur et Internet. Alors que diriez-vous

Comment ajouter des sites de confiance dans Google Chrome Comment ajouter des sites de confiance dans Google Chrome Jul 19, 2024 pm 04:14 PM

Comment ajouter des sites de confiance dans Google Chrome ? Certains utilisateurs ne peuvent pas naviguer normalement sur le Web car la page indique qu'elle n'est pas sécurisée lors de la navigation sur Internet. À ce stade, ils peuvent ajouter le site Web comme site de confiance, et nous pouvons y accéder normalement et surfer sur Internet en douceur. L'éditeur ci-dessous vous présentera les étapes à suivre pour ajouter un site de confiance dans Google Chrome. Les étapes sont simples et faciles à utiliser, et même les débutants peuvent facilement commencer. Les amis qui en ont besoin peuvent en apprendre davantage. Comment ajouter un site de confiance dans Google Chrome : 1. Ouvrez Google Chrome et cliquez sur les trois points dans le coin supérieur droit. Cliquez sur [Paramètres]. Choisissez les paramètres de confidentialité et la sécurité. (Comme le montre l'image) 2. Cliquez sur Paramètres du site Web en bas de la page. (Comme le montre l'image) 3. Cliquez sur le contenu dangereux en bas de la page. (Comme le montre l'image) 4. Cliquez sur le bouton Ajouter à droite de l'option Autoriser. (Comme le montre l'image) 5. Perdre

Qu'est-ce que le fichier hiberfil.sys ? hiberfil.sys peut-il être supprimé ? Qu'est-ce que le fichier hiberfil.sys ? hiberfil.sys peut-il être supprimé ? Mar 15, 2024 am 09:49 AM

Récemment, de nombreux internautes ont demandé à l'éditeur : quel est le fichier hiberfil.sys ? hiberfil.sys peut-il occuper beaucoup d’espace sur le disque C et être supprimé ? L'éditeur peut vous indiquer que le fichier hiberfil.sys peut être supprimé. Jetons un coup d'œil aux détails ci-dessous. hiberfil.sys est un fichier caché dans le système Windows et également un fichier d'hibernation du système. Il est généralement stocké dans le répertoire racine du lecteur C et sa taille est équivalente à la taille de la mémoire installée du système. Ce fichier est utilisé lorsque l'ordinateur est en veille prolongée et contient les données de mémoire du système actuel afin qu'il puisse être rapidement restauré à son état précédent lors de la récupération. Étant donné que sa taille est égale à la capacité de la mémoire, il peut occuper une plus grande quantité d’espace sur le disque dur. hiberner

Explication détaillée du rôle des fichiers .ibd dans MySQL et précautions associées Explication détaillée du rôle des fichiers .ibd dans MySQL et précautions associées Mar 15, 2024 am 08:00 AM

Explication détaillée du rôle des fichiers .ibd dans MySQL et précautions associées MySQL est un système de gestion de base de données relationnelle populaire, et les données de la base de données sont stockées dans différents fichiers. Parmi eux, le fichier .ibd est un fichier de données du moteur de stockage InnoDB, utilisé pour stocker des données et des index dans des tables. Cet article fournira une analyse détaillée du rôle du fichier .ibd dans MySQL et fournira des exemples de code pertinents pour aider les lecteurs à mieux comprendre. 1. Le rôle des fichiers .ibd : stockage des données : les fichiers .ibd sont du stockage InnoDB

Quelle est la différence dans le chemin « Poste de travail » dans Win11 ? Un moyen rapide de le trouver ! Quelle est la différence dans le chemin « Poste de travail » dans Win11 ? Un moyen rapide de le trouver ! Mar 29, 2024 pm 12:33 PM

Quelle est la différence dans le chemin « Poste de travail » dans Win11 ? Un moyen rapide de le trouver ! Comme le système Windows est constamment mis à jour, le dernier système Windows 11 apporte également de nouvelles modifications et fonctions. L'un des problèmes courants est que les utilisateurs ne peuvent pas trouver le chemin d'accès à « Poste de travail » dans le système Win11. Il s'agissait généralement d'une opération simple dans les systèmes Windows précédents. Cet article présentera en quoi les chemins de « Poste de travail » sont différents dans le système Win11 et comment les trouver rapidement. Sous Windows1

Analyse des nouvelles fonctionnalités de Win11 : Comment ignorer la connexion au compte Microsoft Analyse des nouvelles fonctionnalités de Win11 : Comment ignorer la connexion au compte Microsoft Mar 27, 2024 pm 05:24 PM

Analyse des nouvelles fonctionnalités de Win11 : Comment ignorer la connexion à un compte Microsoft Avec la sortie de Windows 11, de nombreux utilisateurs ont constaté qu'il apportait plus de commodité et de nouvelles fonctionnalités. Cependant, certains utilisateurs n'aiment pas que leur système soit lié à un compte Microsoft et souhaitent ignorer cette étape. Cet article présentera quelques méthodes pour aider les utilisateurs à ne pas se connecter à un compte Microsoft dans Windows 11 afin d'obtenir une expérience plus privée et autonome. Tout d’abord, comprenons pourquoi certains utilisateurs hésitent à se connecter à leur compte Microsoft. D'une part, certains utilisateurs craignent

Analyse de la signification et de l'utilisation du point médian en PHP Analyse de la signification et de l'utilisation du point médian en PHP Mar 27, 2024 pm 08:57 PM

[Analyse de la signification et de l'utilisation du point médian PHP] En PHP, le point médian (.) est un opérateur couramment utilisé, utilisé pour connecter deux chaînes ou propriétés ou méthodes d'objets. Dans cet article, nous approfondirons la signification et l’utilisation des points médians en PHP, en les illustrant avec des exemples de code concrets. 1. Opérateur de point médian de chaîne de connexion L’utilisation la plus courante en PHP consiste à connecter deux chaînes. En plaçant . entre deux chaînes, vous pouvez les assembler pour former une nouvelle chaîne. $string1=&qu

See all articles