2012-07-13 4 views
1

Je suis vraiment nouveau avec jQuery mobile mais j'adore travailler avec elle! J'ai rencontré quelques problèmes concernant la mise en cache avec laquelle je me bats.jQuery mobile et PHP définissent la variable

Je dispose d'un fichier php avec la define suivante il:

define('HEADING_TITLE', 'Page 1'); 

Ce fichier est chargé à la page 1 du site. Quand j'écho HEADING_TITLE, je vois 'Page 1'.

Page 2 nécessite un autre fichier php qui remplace HEADING_TITLE comme suit:

define('HEADING_TITLE', 'Page 2'); 

Quand je fais écho HEADING_TITLE, je vois encore 'Page 1'. Je sais que la page 2 define est en cours de traitement parce que si j'ajoute la ligne die(HEADING_TITLE); immédiatement après le define, le script meurt mais me montre toujours 'Page 1'!

Comment puis-je obtenir jQuery mobile pour me permettre d'écraser la variable HEADING_TITLE? Ou est-ce que je devrais aller d'une autre manière? Créer différentes variables de définition comme PAGE1_HEADING_TITLE et PAGE2_HEADING_TITLE n'est pas un problème, mais s'il y a une meilleure façon, j'aimerais le savoir.

Répondre

1

La réponse courte est vous ne pouvez pas remplacer une définition, ils sont appelés constantes pour une raison. Longue réponse est, you can in the runtime, mais c'est hacky et une mauvaise idée.

Si vous choisissez de l'emporter sur une constante dans l'exécution, faire comme ceci:

runkit_constant_redefine("HEADING_TITLE", 'Page 2'); 
+0

Merci Joe, je vais le faire le plus propre alors :) – Damian

+0

Pas de problème :-) il suffit de passer une variable $ title vers le bas ou quelque chose. Les constantes sont plus pour des choses comme le numéro de téléphone de l'entreprise qui est affiché partout, ou de telles choses – JoeCortopassi

Questions connexes