Eu tenho um aplicativo da web em um servidor Linux que começa com <?
Eu precisava copiar esse aplicativo para um ambiente Windows e tudo está funcionando bem, exceto que uma instrução SQL está sendo renderizada de maneira diferente. Eu não sei se isso tem a ver com o script que começa com em <?php
vez de <?
porque não sei de onde habilitar <?
o, PHP.ini
então mudei para<?php
Eu sei que essas duas instruções devem ter o mesmo significado, mas preciso testá-las <?
para garantir que o aplicativo seja exatamente o mesmo. Dessa forma, posso eliminar outra possibilidade.
obrigado
php
tags
php-shorttags
semente
fonte
fonte
Respostas:
Conjunto
no php.ini
E reinicie o servidor Apache.
fonte
/etc/php5/apache2/php.ini
php --ini
para localizar o arquivo de configuração carregado (Arquivo de configuração carregado: /etc/php5/cli/php.ini)Isso pode ser feito ativando short_open_tag no php.ini :
Se você não tiver acesso ao php.ini, tente habilitá-los através do arquivo .htaccess, mas é possível que a empresa de hospedagem o desative se estiver em uma hospedagem compartilhada:
Para as pessoas que pensam que short_open_tags são más práticas a partir do php 5.4, o
<?= ... ?>
shorttag será suportado em todos os lugares , independentemente das configurações, portanto não há razão para não usá-las se você puder controlar as configurações no servidor. Também foi dito neste link: short_open_tagfonte
<? echo $var ?>
marca aberta curta, mas a<?= $var ?>
marca aberta curta. O XML do Afaik não deve ser afetado.<?=
é para modelagem e acho que é bastante válida. Outras linguagens de modelos, como o bigode, também usam tags curtas e simples{{var}}
. O PHP é frequentemente usado como uma linguagem de modelagem e ter que fazer<?php echo $var ?>
é muito mais feio do que o<?=$var?>
HTML embutido.Isso pode ser feito ativando short_open_tag no php.ini:
1.Para localizar o arquivo php.ini, na linha de comentário, execute
você terá algo assim,
Consulte a segunda linha da saída do comentário. O arquivo estará no caminho mencionado.
2. Abra o arquivo php.ini e encontre
short_open_tag
. Por padrão, está emoff
alterá-lo paraon
.3.Reinicie o servidor, execute este comentário
obrigado
fonte
Para definir tags curtas para abrir a partir de um script de instalação do Vagrant no Ubuntu:
fonte
Eu posso ver que todas as respostas acima estão apenas parcialmente corretas. Na realidade, todos os aplicativos PHP do século XXI terão o FastCGI Process Manager (php-fpm), portanto, depois de adicionar php-info () ao script test.php e verificar o caminho correto para o php.ini
IMPORTANTE: você deve reiniciar o processo php-fpm para que isso funcione!
e, finalmente, reinicie o servidor nginx / http
fonte
você precisa ativar short_open_tags.
fonte
Tão simples como isso, siga as seguintes etapas:
php.ini
arquivoLocalize
short_open_tag
e defina-o comoon
Reinicie o servidor
fonte
No CentOS 6 (testado no Centos 7 também), você não pode definir short_open_tag em /etc/php.ini para php-fpm. Você terá um erro:
Você deve editar a configuração do seu site, que pode ser encontrada em /etc/php-fpm.d/www.conf E escrever no final do arquivo:
fonte
Se você estiver usando
Ubuntu
comApache+php5
, nas versões atuais existem 2 locais onde você precisa mudar parashort_open_tag = On
/etc/php5/apache2/php.ini
- isto é para as páginas carregadas através do seu servidor web (Apache)/etc/php5/cli/php.ini
- essa configuração é usada quando você inicia seus arquivos php a partir da linha de comando, como:php yourscript.php
- isso vale para arquivos php executados manualmente ou pelo cronjob diretamente no servidor.fonte
se você editar seu arquivo php.ini, lembre-se de reiniciar o serviço (apache2, etc) para que as edições no php.ini entrem em vigor
fonte
Para os usuários do Wamp Server, existe uma maneira mais fácil: você pode ativar essa configuração clicando com o botão esquerdo do mouse uma vez no ícone WampServer, escolha PHP -> Configurações do PHP -> pequena marca aberta. Espere um segundo, o WampServer irá reiniciar automaticamente o seu PHP e também o seu serviço web.
originalmente de: http://osticket.com/forums/showthread.php?t=3149
fonte
fonte
se estiver usando o xampp, você notará que o arquivo php.ini mencionou duas vezes short_open_tag. Ative o segundo para short_open_tag = On. O primeiro é comentado e você pode ser tentado a descomentar e editá-lo, mas é substituído por um segundo short_open_tag
fonte
Se você estiver usando o xampp no Windows, faça o seguinte
Encontre short_open_tag usando o utilitário ctrl + f
Você vai encontrar
;short_open_tag
remova gentilmente o ponto-e-vírgula (;) da linha.
e mantenha-o como
short_open_tag = on
Por fim, reinicie o servidor Apache
fonte
Para habilitar short_open_tag para um domínio específico com php-fpm, você deve editar:
Onde xxxxx é o número do soquete do domínio.
E adicione: php_value [short_open_tag] = Ativado
fonte
Isso funciona no php7.2 no ubuntu 16, a mesma resposta de Bradley Flood, embora o diretório em que o arquivo de configuração está armazenado tenha mudado.
Além disso, você pode alterar a versão na string php para corresponder à sua versão atualmente instalada.
fonte
em
php.ini
E reinicie o servidor Apache.fonte
Alterei o short_open_tag para Off na minha instância do aws centos 7 e no php7 (PHP 7.0.33 (cli) (compilado em 6 de dezembro de 2018 22:30:44) (NTS)), mas não reflete a página de informações do php e o código Por isso, refiro-me a maio de documentos e encontre uma solução no meu caso. Adicione uma linha extra após o short_open_tag como asp_tags = Ligado após o reinício do Apache Funciona no código e eu saio corretamente
arquivo php.ini
fonte
Defina o
asp_tags = On
eshort_open_tag = On
em ambos os arquivos\apache\Apache2.2.21\bin\php.ini
e\bin\php\php5.3.8\php.ini
em seguida, reinicie o servidor Apache.fonte