Maison  >  Article  >  développement back-end  >  Introduction aux constantes système et aux variables système couramment utilisées dans thinkphp

Introduction aux constantes système et aux variables système couramment utilisées dans thinkphp

不言
不言original
2018-07-03 16:36:181772parcourir

Cet article présente principalement les constantes et variables système couramment utilisées dans thinkphp. Les amis dans le besoin peuvent s'y référer

----------------------------------. -------------------------Variables et constantes système utilisées dans les modèles----------------- ----- ------------------
(1) Variables système  : Variables système de sortie dans le modèle : y compris le serveur, l'environnement, session, post, get , request, cookie 

{$Think.server.script_name} // 输出$_SERVER变量
{$Think.session.session_id|md5} // 输出$_SESSION变量  
{$Think.get.pageNumber} // 输出$_GET变量  
{$Think.cookie.name}  // 输出$_COOKIE变量

La méthode ci-dessus peut également être écrite comme :

{$_SERVER.script_name} // 输出$_SERVER变量 
{$_SESSION.session_id|md5} // 输出$_SESSION变量  
{$_GET.pageNumber} // 输出$_GET变量  
{$_COOKIE.name}  // 输出$_COOKIE变量

Constantes système : Utilisez la sortie $Think.const
Remarque : le serveur, le cookie et la configuration ne sont pas sensibles à la casse, mais les variables sont sensibles à la casse. Par exemple :

{$Think.server.script_name}和{$Think.SERVER.script_name}等效

SESSION et COOKIE prennent également en charge la sortie de tableaux bidimensionnels

Par exemple :

{$Think.CONFIG.user.user_name}
{$Think.session.user.user_name}

Le système ne le prend pas en charge Sortie de tableau de plus de trois dimensions.

(2) Variable de langue : Sortez la valeur de définition de langue actuelle du projet

{$Think.lang.page_error}
{$Think.const.MODULE_NAME}

ou utilisez

{$Think.MODULE_NAME}

(3) Variables spéciales : Constantes définies en interne par le système ThinkPHP

{$Think.version}  //版本
{$Think.now} //现在时间   
{$Think.template|basename} //模板页面   
{$Think.LDELIM} //模板标签起始符号   
{$Think.RDELIM} //模板标签结束符号
(4) Paramètres de configuration : Afficher les valeurs des paramètres de configuration du project


{$Think.config.db_charset}
La valeur de sortie est la même que le résultat de C('db_charset').

------------------------------------------------------utilisé dans le système d'action constantes---------------------------------------

THINK_PATH // Répertoire système ThinkPHP
APP_PATH //Répertoire du projet actuel
APP_NAME //Nom du projet actuel
MODULE_NAME //Nom du module actuel
ACTION_NAME //Nom de l'opération actuelle
TMPL_PATH //Répertoire du modèle de projet
LIB_PATH / / Répertoire de la bibliothèque de classes du projet
CACHE_PATH // Répertoire du cache du modèle de projet
CONFIG_PATH // Répertoire du fichier de configuration du projet
LOG_PATH // Répertoire du fichier journal du projet
LANG_PATH // Répertoire du fichier de langue du projet
TEMP_PATH / /Répertoire des fichiers temporaires du projet
PLUGIN_PATH //Répertoire des fichiers du plug-in du projet
VENDOR_PATH //Répertoire de la bibliothèque de classes tierce
DATA_PATH //Répertoire des fichiers de données du projet
IS_APACHE // S'il appartient à Apache
IS_IIS //S'il appartient à IIS
IS_WIN //S'il appartient à l'environnement Windows
IS_LINUX //S'il appartient à l'environnement Linux
IS_FREEBSD //S'il appartient à l'environnement FreeBsd
NOW_TIME //Horodatage actuel
MEMORY_LIMIT_ON // S'il existe une limite d'utilisation de la mémoire
OUTPUT_GZIP_ON // S'il faut activer la compression de sortie
MAGIC_QUOTES_GPC // MAGIC_QUOTES_GPC
THINK_VERSION //Numéro de version de ThinkPHP
LANG_SET / / Langue du navigateur
TEMPLATE_NAME //Nom du modèle actuel
TEMPLATE_PATH //Chemin du modèle actuel
__ROOT__ //Adresse du répertoire racine du site Web
__APP__ //Adresse du projet actuel (fichier d'entrée)
__URL__ // Adresse actuelle du module
__ACTION__ //Adresse de l'opération actuelle
__SELF__ //Adresse URL actuelle
TMPL_FILE_NAME //Nom du modèle par défaut (y compris le chemin) pour l'opération en cours
WEB_PUBLIC_URL //Répertoire public du site Web
APP_PUBLIC_URL //Répertoire des modèles publics du projet
---- ------------------------------------ Constantes système utilisées dans les modèles-------- --------------------------------
__ROOT__ / / Adresse du répertoire racine du site Web
__APP__ // Adresse du projet actuel (fichier d'entrée)
__URL__ // Adresse actuelle du module
__ACTION__ // Adresse de l'opération actuelle
__SELF__ // Adresse URL actuelle
__PUBLIC__ / / Répertoire public du site Web
../Public (non sensible à la casse) // Répertoire public du modèle du projet
Remarque : lorsque nous utilisons des constantes et visualisons le code source dans le navigateur après le chargement du modèle, nous observons certaines URL qui utilisez des constantes et nous trouverons un phénomène invisible. L'adresse IP du serveur et l'URL commencent par le nom du projet
, alors pourquoi le contrôleur correspondant est-il accessible correctement ? En fait, c'est une blague jouée par le navigateur. Lorsque l'on déplace la souris sur l'URL, faites un clic droit, copiez l'URL
dans le code source, et collez-la ailleurs, l'adresse IP du serveur sera affichée. On voit que l'IP du serveur est incluse dans la constante utilisée dans l'URL.
----------------------------------------Constantes personnalisées---- - -----------------------------------
Dans le dossier du projet (ex : Accueil) Créez un nouveau common.php
dans le dossier Common et ajoutez l'instruction suivante :
define('XXX', XXX); //Le premier paramètre est le nom de la constante et le deuxième paramètre est la valeur constante

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Introduction à cakephp2 Introduction aux classes d'opérations et à l'utilisation du recadrage d'images sans fonction


Ce 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!

Déclaration:
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