Réécriture de variables PHP
P粉933003350
P粉933003350 2024-01-10 17:56:17
0
1
448

Dans header.php, il y a une variable $title définie au même endroit (selon l'URL de la page). Dans l'une des pages intérieures, je souhaite remplacer $title car il est extrait de la base de données. Par exemple : dans header.php il y a

if (...) {$title = "Section 1";}

Alors echo $title

dans inner.php-

include(header.php); ... SELECT .....

$title = "Page 1";

Bien sûr, cela ne fonctionnera pas. J'ai essayé d'utiliser des variables globales sans succès. Comment remplacer la variable $title dans inner.php (header.php) ? Merci pour le conseil, je ne connais pas grand chose en PHP.

J'ai essayé d'utiliser des globales ou même des fonctions, mais je ne suis pas sûr

P粉933003350
P粉933003350

répondre à tous(1)
P粉204079743

Les ordinateurs font ce que vous leur dites dans l'ordre que vous leur dites. Si tu dis ceci :

  1. Définissez le titre sur "Section 1".
  2. Lisez le titre.
  3. Définissez le titre sur "Page 1".

L'ordinateur effectuera chaque étape dans l'ordre. À l'étape 2, il lira « Partie 1 » et à l'étape 3, il n'y a aucun moyen de le « dédire » et de dire quelque chose de différent.

C'est essentiellement ce que fait votre code actuel, avec quelques étapes supplémentaires entre les deux :

  1. Contient "header.php"
  2. (dans header.php) Définissez l'en-tête sur "Section 1" en fonction de l'URL
  3. (dans header.php) Afficher l'en-tête
  4. Faites quelque chose avec la base de données
  5. Définir le titre sur "Page 1"
  6. Afficher le reste de la page

L'étape 5 ne peut pas affecter l'étape 3 ; cela s'est déjà produit.

La manière habituelle d'éviter cela est de diviser le programme en deux étapes : la première étape préparer les données, qui récupère les données de la base de données et prend des décisions sur des éléments tels que les titres des pages ; la deuxième étape affiche les données, qui prend simplement des décisions basées sur les données acquises.

Donc, dans votre cas, vous pouvez diviser la partie données de "header.php" en "startup.php" distinct en procédant comme suit :

  1. Contient "startup.php"
  2. (Dans startup.php) Définissez le titre sur "Section 1" en fonction de l'URL
  3. Faites quelque chose avec la base de données
  4. Définir le titre sur "Page 1"
  5. Contient "header.php"
  6. (dans header.php) Afficher l'en-tête
  7. Afficher le reste de la page

Les titres dans les en-têtes sont désormais affichés une fois que toute la logique a été exécutée et peuvent être affichés sous la forme « Page 1 » au lieu de « Section 1 ».

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!