2012-07-21 76 views
0

我剛安裝了Apache 2.2.22,php 5.3.15和我的Windows 7上的其他東西。在某些時候,標記<?停止工作(Apache現在返回<? ..... ?>作爲純HTML)。浪費了很多時間後,我注意到這個標籤<?php的完整版本確實有效!我怎樣才能解決它,而無需編輯代碼?爲什麼php需要<?php標籤?簡單<?不起作用

+1

http://www.php.net/manual/en/ini.core.php#ini.short-open-tag – 2012-07-21 08:31:27

+1

這就是爲什麼自從2000年代中期以來一直使用'<? php' :) – Corbin 2012-07-21 08:32:41

回答

1

您必須啓用PHP短標籤<?<?=才能在PHP < 5.4中工作。如果可以指定它,請致電ini_set('short_open_tag', true)或修改您的php.ini。有些主機甚至允許在php腳本本身的目錄中使用php.ini,或者您可以通過主機面板自定義php.ini。

+0

從PHP 5.4開始,無論'short_open_tag'設置爲什麼,始終都可以使用'<?='。 – 2012-07-23 15:38:40

+0

是的,我知道,但在他的問題,他說:「我剛安裝了Apache 2.2.22,PHP 5.3.15和其他一些東西在我的Windows 7上。」 – 2012-07-23 19:56:19

+1

我明白了,我只是留下了評論,因爲在真空狀態下,你的開頭句子不再是真實的,我不希望任何人在將來得到錯誤想法時絆倒你的答案。 – 2012-07-23 21:03:01

3

修改short_open_tag在php.ini

1

只需使用<? ?>是不好的做法,所以使用<?php ?>或在php.ini文件編輯short_open_tag

+0

不一定。大多數主機現在允許某種形式的覆蓋,所以服務器兼容性不會成爲問題。還有一種情況是它創建了一個錯誤,即當在php模板中輸出xml時。 – 2012-07-21 08:35:40

+0

是的,這取決於人的觀點,但短標籤沒有任何問題。事實上,它減少了你必須做的打字量。副作用是非常小的,如果你使用SCM,你可以包含php.ini文件,甚至可以在htaccess中使用php_value – 2012-07-21 08:43:40

+0

除了我沒有得到錯誤,因爲我知道如何配置它 – 2012-07-21 08:55:35

相關問題