Les fichiers du...LOGIN

Les fichiers du didacticiel de base de développement PHP incluent

1. Présentation de l'inclusion de fichiers

Dans le développement réel, il est souvent nécessaire de mettre le code commun du programme dans un fichier et d'utiliser le fichiers de ces codes Incluez simplement ce fichier. Cette méthode contribue à améliorer la réutilisabilité du code et apporte une grande commodité à l’écriture et à la maintenance du code. En PHP, il existe quatre méthodes : require, require_once, include et include-once pour inclure un fichier.

Comparons leurs différences :

33.png


Remarque :
1, utilisez moins_ Une fois apporte une fois car cela consommera plus de ressources pour effectuer le travail de détection.

2. Introduction aux fonctions des quatre méthodes

Remarque : Il est recommandé aux étudiants copier le code localement Pour tester

Créer un fichier 1.php et y écrire deux fonctions :

<?php
//functions.php文件
function demo(){
    echo 'aaaa';
}
function test(){
    echo 'cccdddd';
}
?>

Dans le même répertoire du fichier php ci-dessus, je crée un autre 2 Le fichier .php inclut le fichier 1.php. De cette façon, mes fonctions peuvent être placées spécifiquement dans 1.php Lorsque ces fonctions sont nécessaires, je les inclurai à partir de là :

<?php

include '1.php';
//可以直接调用
demo();
test();
?>

Je connais la fonction include grâce à l'exemple ci-dessus. Ensuite, nous comparons include et require :

Dans le code, nous utilisons d'abord include pour inclure le fichier test.php inexistant. Le résultat de sortie local de

<?php

include '1.php';
include 'test.php';
//可以直接调用
demo();
test();
?>

est :

.

34.png

Utilisez ensuite require pour inclure le fichier test.php inexistant :

35.png

En comparant l'exemple ci-dessus, nous avons trouvé :

  • Si le fichier test.php n'existe pas, include émettra un avertissement et continuera à exécuter les fonctions demo() et test().

  • Et require signale directement une erreur, et les fonctions demo() et test() ne peuvent pas continuer à s'exécuter.

Nous le savons grâce au tableau : la différence entre include et include_once est de détecter s'il y a une inclusion répétée. Si include_once est inclus à plusieurs reprises, le fichier correspondant ne sera plus inclus, alors que include ne s'en soucie pas. Que le fichier ait été importé ou non, importez-le à nouveau.

Essayons le même 2.php tout à l'heure. Nous incluons function.php deux fois, en utilisant respectivement include et include_once :

<?php

include '1.php';
include '1.php';
//可以直接调用
demo();
test();
?>

Résultat :

36.png

Changez pour include_once et réessayez :

<?php

include_once '1.php';
include_once '1.php';
//可以直接调用
demo();
test();
?>

Sortie :

37.png

L'invite dans l'image ci-dessus indique que la démo de fonction ne peut pas être redéfinie () .

Comme nous l'avons mentionné dans le chapitre sur la définition des fonctions, une fonction ne peut pas être définie deux fois, sinon une erreur sera signalée. Parce que nous avons inclus 3_1.php deux fois, il a été exécuté deux fois, cette erreur a donc été signalée.

La raison pour laquelle include_once ne signale pas d'erreur est qu'il détecte que function.php a déjà été inclus et ne l'inclut plus.

Quant aux fonctions de require et require_once, pouvez-vous utiliser votre petit cerveau le plus intelligent pour les déduire ? require_once a deux caractéristiques :

1. Le fichier inclus doit exister, sinon l'exécution s'arrêtera

2. Des vérifications d'inclusion en double seront effectuées

Nouvel apprentissage :

  • La différence entre include et require include rencontre un avertissement d'erreur, mais continue de s'exécuter. Require déclenchera une alarme après avoir rencontré une erreur et ne s'exécutera plus

  • La différence entre inlcude et include_once est de détecter s'il est inclus à plusieurs reprises. Si include_once est inclus à plusieurs reprises, le fichier correspondant ne sera plus inclus, alors que include ne s'en soucie pas.


section suivante
<?php //functions.php文件 function demo(){ echo 'aaaa'; } function test(){ echo 'cccdddd'; } ?>
soumettreRéinitialiser le code
chapitredidacticiel