363 Stimmen

Wie aktiviert man PHP-Kurzbefehle?

Ich habe eine Webanwendung auf einem Linux-Server, die mit <?

Ich musste diese Anwendung in eine Windows-Umgebung kopieren und alles funktioniert gut, außer dass eine SQL-Anweisung anders dargestellt wird. Ich weiß nicht, ob dies mit dem Skript zu tun hat, das mit <?php anstelle von <? weil ich nicht weiß, von wo aus ich die <? von der PHP.ini also habe ich es geändert in <?php

Ich weiß, dass diese 2 Aussagen das Gleiche bedeuten sollen, aber ich muss es testen mit <? um sicherzustellen, dass die Anwendung genau dieselbe ist. Auf diese Weise kann ich eine weitere Möglichkeit ausschließen.

T

1voto

Raymie Punkte 109
sed -i "s/short_open_tag = .*/short_open_tag = On/" /etc/php/7.2/apache2/php.ini

Das funktioniert mit php7.2 auf Ubuntu 16, gleiche Antwort wie oben von Bradley Flood, obwohl sich das Verzeichnis, in dem die Konfigurationsdatei gespeichert ist, geändert hat.

Sie können auch die Version in der php-Zeichenkette so ändern, dass sie der aktuell installierten Version entspricht.

0voto

Sergey Pavlov Punkte 19

Für Docker fügen Sie diesen Schritt zum Dockerfile hinzu

  ARG phpIniPath=/path/to/your/php.ini

  RUN sed -i -e 's/^short_open_tag\s*=.*/short_open_tag = On/' $phpIniPath

-1voto

contremaitre Punkte 96

Um short_open_tag für eine bestimmte Domain mit php-fpm zu aktivieren, müssen Sie die Datei :

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

Dabei ist xxxxx die Socket-Nummer der Domäne.

Und hinzufügen: php_value[short_open_tag] = On

-1voto

 short_open_tag = On

in php.ini Starten Sie Ihren Apache-Server neu.

-2voto

bibincatchme Punkte 323

I'v Changed the short_open_tag Off to On on my aws centos 7 instance and php7(PHP 7.0.33 (cli) (built: Dec 6 2018 22:30:44) ( NTS )), but its not reflecting the php info page and the code. Also beziehe ich mich auf die May Docs und finde eine Lösung für meinen Fall. Fügen Sie eine zusätzliche Zeile nach dem short_open_tag als asp_tags = Ein Nach dem Neustart von Apache funktioniert der Code und die Ausgabe ist korrekt

php.ini-Datei

engine = On

; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It is
; generally recommended that <?php and ?> should be used and that this feature
; should be disabled, as enabling it may result in issues when generating XML
; documents, however this remains supported for backward compatibility reasons.
; Note that this directive does not control the <?= shorthand tag, which can be
; used regardless of this directive. 
; Default Value: On   
; Development Value: Off     
; Production Value: Off  
; http://php.net/short-open-tag

short_open_tag = On

; Allow ASP-style <% %> tags   
; http://php.net/asp-tags
asp_tags = On

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X