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__);
?>
Copier après la connexion
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 )
Copier après la connexion
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
Enfin :
Regardez la fonction définir(), en fait ; est une fonction qui définit des constantes, telles que : définir('MEN','ooooo');
Ensuite, vous pouvez utiliser MEN pour représenter la chaîne ooooo
Alors c'est tout. Quel est l'avantage ? de l'écriture est que lorsque vous avez besoin de modifier une variable, il vous suffit de la modifier, ce qui est assez pratique, surtout pour les chaînes comme les chemins !
Expliquons ce code :
define('__TYPECHO_ROOT_DIR__', dirname(__FILE__));
Copier après la connexion
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');
Copier après la connexion
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")
Copier après la connexion
Ensuite, vous pouvez utiliser directement dans d'autres pages à l'avenir
include("conn.php")
Copier après la connexion
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__);
Copier après la connexion
, par exemple An. exemple :
Une de vos pages contient cette déclaration :
include('/inc/sql.php');
include('/inc/conn.php');
Copier après la connexion
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')
Copier après la connexion
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
php
implémentation de Méthode chinoise simple de fonction de code de vérification
Mise en œuvre d'un algorithme de cryptage symétrique en php
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!