2010-11-06 4 views
2

J'ai 2 ordinateurs portables avec les mêmes configs win7. Les Apache/PHP/MySQL sont le copier/coller de l'un à l'autre. Mais le PHP fonctionne seulement si <?php ?> est ajouté sur un, et fonctionne bien avec <? ?> sur l'autre ordinateur portable.Je veux faire PHP travailler avec <? ?> et pas avec <?php ?>

Je ne veux pas changer tous les tags PHP de <? ?> à <?php ?>. Comment puis-je faire le PHP avec <? ?>.

+3

Vous soulignez une excellente raison d'utiliser toujours - on ne sait jamais d'un serveur à la prochaine si vous pouvez vous en sortir avec le raccourci , alors sauvez-vous le problème/chagrin et ne l'utilisez pas. Imaginez que vous n'ayez pas le contrôle de php.ini. –

+1

@Surreal c'est juste un paramètre de configuration, parmi beaucoup d'autres. Ne faites pas une grosse affaire. Pourquoi personne ne saute sur le sol pour crier le même avertissement à propos de mod_rewrite, PDO, et de toute autre technologie utile qui pourrait être désactivée, mais les mauvaises étiquettes courtes sont toujours blâmées? –

+0

Vous trouverez plus d'informations sur pourquoi GWW

Répondre

8

Vous devez activer les étiquettes courtes. Définissez short_open_tag à 1 dans php.ini.

Avant PHP 5.4, ce qui permet comme des alternatives à <?php et <?php echo respectivement les deux <? et <?=. En PHP 5.4, est toujours activé, donc short_open_tag contrôle uniquement la disponibilité de <?.

6

Meilleure idée: Changez votre code pour utiliser <?php. De cette façon, il est plus portable et vous n'aurez pas à le réécrire lorsque vous changez de serveur.

Si vous voulez vraiment vraiment le raccourci et ne se soucient pas de la portabilité, de changer short_open_tag dans php.ini à 1.

+0

Je dirais que c'est * légèrement * plus portable et que dans le cas improbable où vous rencontrez un serveur qui n'a pas de balises courtes activées, vous devrez modifier un paramètre ini ou passer 30 secondes [exécuter votre code via sed] (http://www.sjhannah.com/blog/?p=118). – meagar

+0

Vous pouvez également correctement en-têtes XML: 'Doit être' '; ?> 'avec des balises courtes sur. –

+2

@Brendan Les gens mentionnent toujours que vous pouvez enregistrer 7 caractères lors de l'ouverture d'un document XML, mais ne semblent jamais se soucier que vous tapez 7 caractères de plus * chaque fois que vous produisez le résultat d'une expression PHP. Lequel de ceux-ci faites-vous plus fréquemment? – meagar

Questions connexes