2012-09-07 38 views
2

我有一些PHP變量需要在JavaScript中使用。我沒有使用ajax來回傳遞變量,而是選擇將js文件解析爲php。這裏是什麼,我做了一個簡單的例子:在使用將JS文件解析爲PHP的副作用是什麼?

#.htaccess 
AddType application/x-httpd-php .js 

//scripts.js 
//or for security reason, I could just use scripts.php and add header at the top) 

header("Content-type: text/javascript"); 
alert("Hello <?php echo $_SESSION['username']; ?>"); 

心中已經這個方法一段時間,我還沒有發現任何明顯的問題。

是否有任何副作用這樣做?謝謝。

+1

你可能會想要像'.phpjs'這樣的自定義擴展名來避免在每個JavaScript文件上這樣做。 – tadman

+0

@tadman aha,猜猜這是我現在使用的擴展名。爲了讓示例夠簡單,我將其更改爲js。 – user1643156

+0

你也有副作用,如果js被緩存,並且另一個用戶登錄到同一臺機器,他們可能會被送達錯誤的js。 – sberry

回答

0

我看不到任何這方面的問題,但對我來說更容易的解決辦法是:

<script type="text/javascript"> 
    var username = "<?=$_SESSION["username"]?>"; 
</script> 

在模板或指數的頭部區域。

相關問題