Saya memiliki aplikasi web di server Linux yang dimulai dengan <?
Saya perlu menyalin aplikasi ini ke lingkungan windows dan semuanya berfungsi dengan baik kecuali bahwa pernyataan SQL diberikan secara berbeda. Saya tidak tahu apakah ini ada hubungannya dengan skrip yang dimulai dengan <?php
alih - alih <?
karena saya tidak tahu dari mana harus mengaktifkan <?
dari PHP.ini
jadi saya mengubahnya menjadi<?php
Saya tahu bahwa 2 pernyataan ini seharusnya memiliki arti yang sama tetapi saya harus mengujinya <?
untuk memastikan bahwa aplikasi tersebut persis sama. Dengan cara ini saya bisa menghilangkan kemungkinan lain.
Terima kasih
php
tags
php-shorttags
seedg
sumber
sumber
Jawaban:
Set
di php.ini
Dan restart server Apache Anda.
sumber
/etc/php5/apache2/php.ini
php --ini
untuk mencari file konfigurasi yang dimuat (Loaded Configuration File: /etc/php5/cli/php.ini)Ini dapat dilakukan dengan mengaktifkan short_open_tag di php.ini :
Jika Anda tidak memiliki akses ke php.ini, Anda dapat mencoba mengaktifkannya melalui file .htaccess tetapi ada kemungkinan perusahaan hosting menonaktifkan ini jika Anda menggunakan shared hosting:
Bagi orang yang berpikir bahwa short_open_tags adalah praktik yang buruk pada php 5.4
<?= ... ?>
shorttag akan didukung di mana-mana , terlepas dari pengaturannya sehingga tidak ada alasan untuk tidak menggunakannya jika Anda dapat mengontrol pengaturan di server. Juga dikatakan di tautan ini: short_open_tagsumber
<? echo $var ?>
tag terbuka pendek tetapi<?= $var ?>
tag terbuka pendek. Afaik XML tidak boleh terpengaruh.<?=
adalah untuk templating dan saya pikir itu yang cukup valid. Bahasa templating lain seperti kumis juga menggunakan tag sederhana pendek{{var}}
. PHP sering digunakan sebagai bahasa templating dan yang harus dilakukan<?php echo $var ?>
jauh lebih jelek daripada<?=$var?>
di HTML sebaris.Ini dapat dilakukan dengan mengaktifkan short_open_tag di php.ini:
1.Untuk mencari file php.ini, pada baris komentar jalankan
Anda akan mendapatkan beberapa hal seperti ini,
Lihat baris ke-2 dari output komentar. File akan berada di jalur yang disebutkan.
Buka file php.ini dan temukan
short_open_tag
. Secara default itu dioff
ubah keon
.3. Mulai ulang server, jalankan komentar ini
Terima kasih
sumber
Untuk menetapkan tag pendek agar dibuka dari skrip instal Vagrant di Ubuntu:
sumber
Saya dapat melihat semua jawaban di atas hanya sebagian yang benar. Pada kenyataannya semua aplikasi PHP Abad 21 akan memiliki FastCGI Process Manager (php-fpm) sehingga setelah Anda menambahkan php-info () ke skrip test.php Anda dan memeriksa jalur yang benar untuk php.ini
PENTING: maka Anda harus memulai kembali proses php-fpm Anda agar ini dapat bekerja!
dan akhirnya restart server nginx / http Anda
sumber
Anda harus mengaktifkan short_open_tags.
sumber
Sesederhana itu, ikuti langkah-langkah berikut:
php.ini
fileTemukan
short_open_tag
dan aturon
Mulai ulang server
sumber
Di CentOS 6 (diuji pada Centos 7 juga) Anda tidak dapat mengatur short_open_tag di /etc/php.ini untuk php-fpm. Anda akan memiliki kesalahan:
Anda harus mengedit config untuk situs Anda, yang dapat ditemukan di /etc/php-fpm.d/www.conf Dan menulis di akhir file:
sumber
Jika Anda menggunakan
Ubuntu
denganApache+php5
, maka pada versi saat ini ada 2 tempat di mana Anda perlu mengubahnyashort_open_tag = On
/etc/php5/apache2/php.ini
- Ini untuk halaman yang dimuat melalui server web Anda (Apache)/etc/php5/cli/php.ini
- konfigurasi ini digunakan ketika Anda meluncurkan file php dari baris perintah, seperti:php yourscript.php
- yang berlaku untuk file php yang dijalankan secara manual atau cronjob langsung di server.sumber
jika Anda mengedit file php.ini Anda, jangan lupa untuk me-restart layanan Anda (apache2, dll) untuk pengeditan ke php.ini agar berlaku
sumber
Untuk pengguna Wamp Server ada cara yang lebih mudah: Anda dapat mengaktifkan pengaturan itu cukup (kiri) klik sekali pada ikon WampServer, pilih PHP -> pengaturan PHP -> tag terbuka pendek. Tunggu sebentar, maka WampServer akan secara otomatis me-restart PHP Anda dan juga layanan web-nya.
berasal dari: http://osticket.com/forums/showthread.php?t=3149
sumber
sumber
jika menggunakan xampp, Anda akan melihat file php.ini telah dua kali menyebutkan short_open_tag. Aktifkan yang kedua ke short_open_tag = Hidup. Yang pertama dikomentari dan Anda mungkin tergoda untuk membatalkan komentar dan mengeditnya tetapi terlalu dikuasai oleh short_open_tag kedua
sumber
Jika Anda menggunakan xampp di windows maka silakan lakukan hal berikut
Temukan short_open_tag menggunakan utilitas ctrl + f
Anda akan ditemukan
;short_open_tag
hapus tanda titik koma (;) dari baris.
dan simpan sebagai
short_open_tag = on
Terakhir, restart server Apache Anda
sumber
Untuk mengaktifkan short_open_tag untuk domain tertentu dengan php-fpm, Anda harus mengedit:
Di mana xxxxx adalah nomor soket dari domain.
Dan tambahkan: php_value [short_open_tag] = Hidup
sumber
Itu berfungsi pada php7.2 di ubuntu 16, jawaban yang sama seperti di atas oleh Bradley Flood, meskipun direktori tempat file konfigurasi disimpan telah berubah.
Anda juga dapat mengubah versi dalam string php agar sesuai dengan versi yang saat ini diinstal.
sumber
di
php.ini
dan restart Server Apache Anda.sumber
Saya telah mengubah short_open_tag ke Aktif pada aws centos 7 instance saya dan php7 (PHP 7.0.33 (cli) (dibangun: 6 Desember 2018 22:30:44) (NTS)), tetapi itu tidak mencerminkan halaman info php dan kodenya. Jadi saya merujuk Mei dokumen dan menemukan solusi pada kasus saya. Tambahkan baris tambahan setelah short_open_tag sebagai asp_tags = Aktif setelah itu restart Apache Ia bekerja pada kode dan saya pergi output dengan benar
file php.ini
sumber
Mengatur
asp_tags = On
danshort_open_tag = On
di kedua file\apache\Apache2.2.21\bin\php.ini
dan\bin\php\php5.3.8\php.ini
dan kemudian restart server apache.sumber