Maison > Article > développement back-end > Explication détaillée sur l'utilisation de la fonction set_include_path() en PHP
Cet article présente principalement l'utilisation connexe de la fonction set_include_path() en PHP et analyse les compétences associées de PHP pour la définition du chemin de fichier sous forme d'exemples. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. 🎜>
Regardez d'abord le code suivant :<?php /** 定义根目录 */ define('__TYPECHO_ROOT_DIR__', dirname(__FILE__)); /** 定义插件目录(相对路径) */ define('__TYPECHO_PLUGIN_DIR__', '/usr/plugins'); /** 设置包含路径 */ @set_include_path(get_include_path() . PATH_SEPARATOR . __TYPECHO_ROOT_DIR__ . '/var' . PATH_SEPARATOR . __TYPECHO_ROOT_DIR__ . __TYPECHO_PLUGIN_DIR__); ?>Tout d'abord : Regardons ceci variable globale : __FILE__Elle représente le chemin complet du fichier (incluant le nom du fichier bien sûr)C'est à dire qu'elle a des valeurs différentes selon le répertoire où se trouve votre fichier est localisé ; bien sûr, lorsqu'il est utilisé dans un fichier de ligne de package , sa valeur est le chemin inclus alors : Regardons cette fonction :
string dirname ( string path )it C'est une fonction intégrée en PHP. Quelle est sa fonction ? C'est de renvoyer le répertoire autre que le nom du fichier. > Si la variable _FILE_ est utilisée dans votre page d'accueil : (Supposons que le répertoire où se trouve votre page web est : http://localhost/web/index.php), alors : La valeur de
_FILE_ est http://localhost/web/index.php (un chemin absolu). À l'heure actuelle, le nom de répertoire (_FILE_) représente http://localhost/web/, ce qui signifie qu'il n'y a pas de nom de fichier index.php.
Et dirname(dirname(_FILE_)) représente le répertoire de niveau supérieur, et ainsi de suite
define('__TYPECHO_ROOT_DIR__', dirname(__FILE__));consiste à définir __TYPECHO_ROOT_DIR__ comme le répertoire où se trouve ce fichier, comme cette définition Généralement, il est placé dans config.inc.php, alors le répertoire obtenu est le répertoire où se trouve config.inc.php c'est-à-dire le répertoire racine !
define('__TYPECHO_PLUGIN_DIR__', '/usr/plugins');Inutile de le dire ! Quant à ce que signifie set_include_path(get_include_path() . PATH_SEPARATOR . $path); Par exemple, si vous avez un dossier : nommé include, il y a un fichier de connexion à la base de données :conn.php...,Vous le définissez comme ceci :
set_include_path("/include")Ensuite, vous pouvez utiliser directement dans d'autres pages à l'avenir
include("conn.php")N'est-ce pas souvent vu ? Ses paramètres sont des chaînes. Bien sûr, vous pouvez également définir plusieurs chemins, séparés par ;. Que signifie cette phrase :
set_include_path(get_include_path() . PATH_SEPARATOR . __TYPECHO_ROOT_DIR__ . '/var' . PATH_SEPARATOR . __TYPECHO_ROOT_DIR__ . __TYPECHO_PLUGIN_DIR__);, par exemple An. exemple : Une de vos pages contient cette déclaration :
include('/inc/sql.php'); include('/inc/conn.php');Et vous avez soudainement découvert que j'avais inclus ces fichiers. Il n'est pas sûr de mettez-le dans le répertoire inc. Que dois-je faire ? Je veux le changer. Je veux le mettre dans le répertoire include. D'accord, c'est bizarre si je ne suis pas épuisé avec autant de pages : y a-t-il un bon moyen ? avoir! ! ! ! ! ! ! Écrivez cette phrase dans config.inc.php :
set_include_path(get_include_path() .'/include')C'est aussi simple que ça, oui, c'est aussi simple que ça ! Modification dynamique ! Ne regardez pas ça : get_include_path() . PATH_SEPARATOR . Qu'est-ce que c'est ? C'est juste une chaîne de chemin au milieu est un symbole de connexion de chaîne. des constantes que nous venons de définir dans une chaîne, ce qui signifie qu'il peut définir dynamiquement le chemin d'inclusion ! Si le chemin inclus est renvoyé correctement, false est renvoyé s'il est incorrect Résumé : ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun ; Recommandations associées :
Explication graphique détaillée des opérations sur les fichiers en PHP
phpimplémentation de Méthode chinoise simple de fonction de code de vérification
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!