2012-05-29 50 views
-1

完全相同的代碼通過棉絨檢查的PHP -l「PHP 5.3.13(服務器)上,但不是在PHP 5.3.12(本地)。這是我的本地配置的結果,我可以改變或我應該?例如,我可以使用printf()重寫下面的else,但只是好奇。PHP的解析錯誤T_EXIT,期待T_FUNCTION

PHP解析錯誤:語法錯誤,意想不到T_EXIT,期望T_FUNCTION

function wp_custom_redirect($url) { 

    if(! headers_sent()) 
    { 
     wp_redirect($url); 
    } 
    else 
    { 
    ?> 

    <script> 
    self.location.href = '<?php echo $url; ?>'; 
    </script> 

    <?php 
    } 

    exit(); 
} 

更新:與出口處的線(); (T_EXIT)是錯誤的行。

我可以重寫別的像這樣(見下文)和絨毛經過我的本地機器上。我試圖確定的是爲什麼它失敗時,它是有效的PHP,我懷疑這是一些php.ini配置。我只是不確定在哪裏。

else 
{ 
    printf('<script>self.location.href = "%s";</script>', $url); 
} 

解決它的這個前面的例子,但<?使用的<?php,而不是和我的本地服務器配置,short_tags離家時,不知道爲什麼皮棉存放在後來下去,直到多代碼

+0

請記住,如果您發佈了更多此代碼? – deex

+0

錯誤發生在哪一行? –

回答

0

配置確實是問題,因爲它是我的本地php.ini上的short_tags = Off設置。我之前沒有在比我發佈的函數更早的函數中捕獲它,但行號並沒有幫助,我也不完全確定lint爲什麼沒有指示short_tag而不是T_EXIT。

0

Hy,哪條線發生錯誤?

你這樣稱呼它嗎?

wp_custom_redirect('http://google.com'); 
相關問題