Je voulais savoir comment les fichiers sont inclus dans PHP. Ce que je veux dire par là, c'est comment les variables des fichiers inclus sont importées et comment le fichier inclus est capable d'utiliser les variables du fichier principal. J'étais en train de créer un système de templates et le problème était que j'avais un fichier d'index qui comprenait les autres fichiers comme config.php etc. Mais selon la page demandée, index.php contenait aussi les fichiers template. Mais pour une certaine raison, je n'étais pas en mesure d'utiliser les variables à partir du fichier de configuration à partir du fichier template.phpPhp y compris les fichiers
Répondre
ci-dessous est vars.php
<?php
$color = 'green';
$fruit = 'apple';
?>
ci-dessous est test.php
<?php
echo "A $color $fruit"; // A
include 'vars.php';
echo "A $color $fruit"; // A green apple
?>
simple de http://php.net/manual/en/function.include.php
déclarant global variables
<?php
$a = 1;
$b = 2;
function Sum()
{
global $a, $b;
$b = $a + $b;
}
Sum();
echo $b;
?>
un coup d'oeil à ce http://php.net/manual/en/language.variables.scope.php
Merci .............. –
portée variable est héritée.
Vous pouvez même renvoyer une valeur depuis un fichier include
d! Sinon, vous pouvez considérer la fonction comme une insertion simple, basée sur du texte (lexical).
Voir http://php.net/manual/en/function.include.php pour plus d'informations.
La documentation dit, explicitement: "Quand un fichier est inclus, le code qu'il contient hérite de la portée variable de la ligne sur laquelle se trouve l'inclusion.Toutes les variables disponibles sur cette ligne dans le fichier appelant seront alors disponibles dans le fichier appelé, mais toutes les fonctions et classes définies dans le fichier inclus a la portée globale. " –
- 1. fichiers PHP, y compris
- 2. Y compris les fichiers
- 3. Y compris les fichiers PHP lent?
- 4. y compris les fichiers php avec execPHP
- 5. PHP classes et y compris les fichiers
- 6. PHP y compris d'autres fichiers php question
- 7. y compris les fichiers problème
- 8. Y compris les constantes PHP
- 9. Y compris les sauts de fichiers php script
- 10. Y compris les fichiers dans php ne pas être trouvé
- 11. php y compris le fichier
- 12. Y compris les fichiers source dans C
- 13. Y compris les fichiers d'un répertoire
- 14. Umbraco & TFS - Y compris les fichiers cachés
- 15. Y compris les fichiers en C++
- 16. Y compris les fichiers .h OpenCV
- 17. Y compris les fichiers JS dans Derby.js
- 18. problème Ant y compris les fichiers spécifiques
- 19. y compris les fichiers d'en-tête dans les fichiers .cpp
- 20. y compris dynamiquement les scripts php
- 21. y compris les fichiers sans avoir à spécifier $ _SERVER [ « DOCUMENT_ROOT »]
- 22. Y compris les classes personnalisées
- 23. erreur y compris les fichiers js dans codeigniter
- 24. Y compris les commentaires pour le téléchargement de plusieurs fichiers
- 25. Php variable dans plusieurs fichiers, y compris jquery
- 26. Y compris les fonctions Wordpress
- 27. Y compris une partie d'un fichier php?
- 28. Doxygen y compris les méthodes deux fois les fichiers doc
- 29. trace les fonctions wordpress et y compris les fichiers
- 30. Y compris les bibliothèques boost dans les fichiers make
son problème de portée variable, ne pas inclure. n'incluez pas l'intérieur de la fonction si vous voulez accéder aux variables globales –
Une bonne idée est d'imaginer le script inclus en remplaçant l'instruction 'include()' en place. Ensuite, il devient évident comment la portée variable vous a échoué. – mario
Je crois que c'est aussi une question de timing. Si vous essayez d'utiliser une variable avant l'inclusion du fichier, vous recevrez une erreur. – Anthony