Comment activer les balises courtes PHP?

J'ai une application web sur un serveur Linux qui commence par <?

J'avais besoin de copier cette application dans un environnement windows et tout fonctionne bien sauf qu'une instruction SQL est rendue différemment. Je ne sais pas si cela a à voir avec le script commençant par <?php au lieu de <?, car je ne sais pas d'où activer le <? de la PHP.ini, donc je l'ai changé pour <?php

Je sais que ces 2 déclarations sont censées signifier la même chose mais j'ai besoin pour le tester avec <? afin de s'assurer que l'application est exactement le même. De cette façon, je peux éliminer une autre possibilité.

Merci

277
demandé sur samayo 2010-02-02 18:44:10

18 réponses

Ensemble

short_open_tag=On

Dans php.ini

Et redémarrez votre serveur Apache.

489
répondu codaddict 2012-02-11 05:07:45

Cela peut être fait par l'activation short_open_tag dans php.ini :

short_open_tag = on

Si vous n'avez pas accès au php.ini vous pouvez essayer de les activer à travers le .htaccess Fichier mais il est possible que la société d'hébergement désactivé si vous êtes sur l'hébergement partagé:

php_value short_open_tag 1

Pour les personnes qui pensent que short_open_tags sont de mauvaises pratiques à partir de php 5.4, le <?= ... ?> shorttag sera supporté partout , quels que soient les paramètres, il n'y a donc aucune raison de ne pas utiliser si vous pouvez contrôler les paramètres sur le serveur. Aussi dit dans ce lien: short_open_tag

68
répondu RJD22 2012-08-02 12:01:16

Cela peut être fait en activant short_open_tag en php.ini:

1.To localisez php.fichier ini,sur la ligne de commentaire exécuter

 php --ini

Vous obtiendrez quelque chose comme ça,

Configuration File (php.ini) Path: /etc
Loaded Configuration File:         /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed:      /etc/php.d/curl.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/gd.ini,
/etc/php.d/json.ini,
/etc/php.d/mcrypt.ini,
/etc/php.d/mysql.ini,
/etc/php.d/mysqli.ini,
/etc/php.d/pdo.ini,
/etc/php.d/pdo_mysql.ini,
/etc/php.d/pdo_sqlite.ini,
/etc/php.d/phar.ini,
/etc/php.d/sqlite3.ini,
/etc/php.d/zip.ini

Voir la 2ème ligne de la sortie du commentaire.Le fichier sera dans le chemin spécifié.

2.Ouvrez php.fichier ini et trouver short_open_tag. Par défaut, il est dans off modifier pour on.

3.Redémarrez le serveur,exécutez ce commentaire

service httpd restart

Merci

18
répondu user2086641 2013-08-26 12:08:32

Pour définir des balises courtes à ouvrir à partir d'un script D'installation Vagrant sur Ubuntu:

sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php5/apache2/php.ini
18
répondu Bradley Flood 2014-06-27 04:03:34

Je peux voir que toutes les réponses ci-dessus sont partiellement correctes seulement. En réalité, toutes les applications PHP du 21ème siècle auront FastCGI Process Manager (php-fpm) donc une fois que vous avez ajouté php-info () dans votre test.script php et vérifié le chemin correct pour php.ini

Go to php.ini and set short_open_tag = On

IMPORTANT: alors vous devez redémarrer votre processus php-fpm pour que cela puisse fonctionner!

sudo service php-fpm restart

Et enfin redémarrez votre serveur Nginx / http

sudo service nginx restart
11
répondu Eddy Ferreira 2014-07-03 11:00:41

, Vous devez activer short_open_tags.

short_open_tag = On
9
répondu Jage 2010-02-02 15:46:14

Aussi simple que cela, suivez les étapes suivantes:

  1. aller à php.fichier ini
  2. trouvez, 'short_open_tag' et définissez-le sur on,
  3. Redémarrez le serveur

Donc, short_open_tag = Le

9
répondu Suresh KUMAR Mukhiya 2013-02-10 11:11:00

Dans CentOS 6 (testé aussi sur Centos 7), vous ne pouvez pas définir short_open_tag dans / etc / php.ini pour php-fpm. Vous aurez une erreur:

ERROR: [/etc/php.ini:159] unknown entry 'short_open_tag'
ERROR: Unable to include /etc/php.ini from /etc/php-fpm.conf at line 159
ERROR: failed to load configuration file '/etc/php-fpm.conf'
ERROR: FPM initialization failed

Vous devez modifier la configuration de votre site, qui se trouve dans /etc / php-fpm.d / www.conf Et écrire à la fin du fichier:

php_value[short_open_tag] =  On
9
répondu XakRu 2015-10-21 08:22:41

Si vous modifiez votre php.fichier ini, n'oubliez pas de redémarrer votre service (apache2, etc) pour les modifications de php.ini à prendre effet

6
répondu Steve Wasiura 2011-04-27 12:54:45

Si vous utilisez Ubuntu avec Apache+php5, puis sur les versions actuelles il y a 2 endroits où vous avez besoin de changer de short_open_tag = On

  1. /etc/php5/apache2/php.ini - Ceci est pour les pages chargées via votre serveur web (Apache)
  2. /etc/php5/cli/php.ini - cette configuration est utilisée lorsque vous lancez vos fichiers php à partir de la ligne de commande, comme: php yourscript.php - cela vaut pour les fichiers PHP exécutés manuellement ou cronjob directement sur le serveur.
5
répondu Vladas Freimanas 2015-01-21 09:51:52

Pour les utilisateurs du serveur Wamp, il existe un moyen plus simple: Vous pouvez activer ce paramètre simplement (à gauche) cliquez une fois sur L'icône WampServer, choisissez PHP - > paramètres PHP - > balise ouverte courte. Attendez une seconde, puis WampServer redémarrera automatiquement votre PHP et aussi son service web.

Originaire de: http://osticket.com/forums/showthread.php?t=3149

4
répondu Reza Ameri 2012-09-21 15:26:17
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
;short_open_tag=Off   <--Comment this out
; XAMPP for Linux is currently old fashioned
short_open_tag = On   <--Uncomment this
4
répondu Rhadley 2014-01-09 11:38:42

Si vous utilisez xampp, vous remarquerez le php.le fichier ini a mentionné deux fois short_open_tag . Activez le second sur short_open_tag = On . Le premier est commenté et vous pourriez être tenté de le décommenter et de le modifier, mais il est surchargé par un second short_open_tag

1
répondu Roger Gajraj 2013-12-04 05:33:51

Si vous utilisez xampp sous windows, veuillez suivre

  1. Ouvrez le panneau de configuration XAMPP.
  2. Cliquez sur le bouton CONFIG.
  3. Aller à PHP (php.ini) option.

Trouvez short_open_tag en utilisant l'utilitaire ctrl + f

Vous trouverez ;short_open_tag

Veuillez supprimer le point-virgule (;) de la ligne.

Et gardez-le comme short_open_tag = on

Enfin, redémarrez votre serveur Apache

1
répondu Praful Rajput 2014-11-21 09:11:33

Pour activer short_open_tag pour un domaine particulier avec php-fpm, vous devez modifier :

/etc/php5/fpm/pool.d / xxxxxxxxxx.conf

Où xxxxx est le numéro de socket du domaine.

Et d'ajouter : php_value[short_open_tag] = Le

0
répondu contremaitre 2017-03-13 10:46:28
sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php/7.2/apache2/php.ini

Cela fonctionne sur php7. 2 sur ubuntu 16, même réponse que ci-dessus par Bradley Flood, bien que le répertoire dans lequel le fichier de configuration est stocké ait changé.

Vous pouvez également changer la version dans la chaîne php pour correspondre à votre version actuellement installée.

0
répondu Raymie 2018-07-18 00:56:23
 short_open_tag = On

Dans php.ini Et redémarrez votre serveur Apache.

-1
répondu Muhibbullah Muhi 2018-01-11 13:24:51

Définir la asp_tags = On et short_open_tag = On dans les deux fichiers \apache\Apache2.2.21\bin\php.ini et \bin\php\php5.3.8\php.ini, puis redémarrez le serveur apache.

-6
répondu kal 2012-07-24 11:25:22