[英]How to send a JS file from my server when it actually is a php?
我需要服務器發送JS文件,但實際上需要它是PHP生成的文件。
我正在將Apache與PHP結合使用。
所以那個函數命名
doSomething(){
};
可
doSomething(){
<?php
if(registeredUser()){
echo "Doing something!";
}
?>
};
給文件一個php擴展名,但像普通JavaScript一樣加載它
<script type="text/javascript" src="/javascript.php"></script>
在您的PHP文件中發送正確的內容類型:
header("content-type: text/javascript");
這使您的服務器可以使用PHP創建JavaScript。
您不需要做任何魔術。 只要Javascript有效,瀏覽器就不在乎創建Javascript的原因!
也就是說,您應該發送正確的Content-type
標頭:
header('Content-type: text/javascript');
您可以通過簡單地使用PHP文件作為腳本的src
屬性來執行此操作:
<script src="myfile.php"></script>
但是,從資源角度來看,運行另一個PHP腳本並不理想。 觸發了另一個PHP進程,您必須注意緩存等問題。
考慮一下您的JS文件中是否不能包含靜態代碼,並在要運行PHP的主文件中設置要檢查的條件。
在JavaScript文件(myfile.js)中:
function doSomething()
{ if (logged_in) do_something() }
在主文件的<head>
,執行以下操作:
<script>
<?php if (registeredUser()): ?>
logged_in = true;
<?endif; ?>
<script>
然后照常添加靜態JS文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.