Passer des variables aux fichiers inclus en PHP
PHP fournit un moyen pratique d'inclure des fichiers externes dans des scripts à l'aide de l'instruction include. Cependant, lorsqu'ils tentent de transmettre des variables aux fichiers inclus, certains utilisateurs sont confrontés à des défis.
Dans les anciennes versions de PHP, il était nécessaire de transmettre explicitement les variables en utilisant des approches telles que les variables globales ou les méthodes d'assistance. Cependant, dans les versions modernes de PHP, cela n'est plus nécessaire.
Toute variable PHP définie avant l'appel d'include est automatiquement disponible dans le fichier inclus. Pour illustrer cela, considérons l'exemple suivant :
<code class="php">// In the main file: $variable = "apple"; include('second.php');</code>
<code class="php">// In second.php: echo $variable; // Output: "apple"</code>
Cette approche simple vous permet de partager des variables entre le fichier principal et les fichiers inclus de manière transparente.
Il est important de noter que si une variable est définie dans un fichier inclus, elle ne sera disponible que dans ce fichier. Pour transmettre des variables dans une fonction qui appelle include inside, vous pouvez utiliser la fonction extract().
<code class="php">function includeWithVariables($filePath, $variables = [], $print = true) { // Extract the variables to a local namespace extract($variables); // Start output buffering ob_start(); // Include the template file include $filePath; // End buffering and return its contents $output = ob_get_clean(); if (!$print) { return $output; } echo $output; }</code>
Cela vous permet de transmettre des variables à un fichier inclus tout en conservant la flexibilité d'utilisation d'une 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!