2015-08-20 17 views
-6

我有一個叫做$ function的函數。我希望我的代碼每秒鐘爲「$」功能添加1,並在「實時」中添加。如何將1添加到每秒功能?

$function = 100; 
$add = $function + 1; 

echo $add; 

如何運行/執行$添加每秒?我希望看到這個數字在「live」中變得更大(每次我想看結果時都不必刷新頁面)。

+1

這不是如何php works.use JS來更新您的客戶端上的數字。 –

+1

是的,沒有某種類型的ServerSideNotification或WebSocket安裝程序,你不會獲得特定類型的功能。或者,使用原生javascript來改變DOM - 更容易 – Ohgodwhy

+0

我該怎麼做?你有一個代碼可以做到這一點(我不知道JS: - /)? – user2762504

回答

1

PHP是一個服務器端語言,它只能在您的服務器上實際執行任何操作。如果您希望在客戶端(即您的瀏覽器)上動態更新內容,則需要客戶端語言(如JavaScript)。通常,PHP等服務器端語言生成客戶端代碼,然後通過網絡將其傳輸到您的瀏覽器。

例如,你可以讓你的PHP服務器輸出以下HTML:

<html> 
    <body> 
     <div id="number">1</div> 
     <script> 
      var text = document.getElementById("number"); 
      var number = 1; 

      window.setInterval(function() { 
       // code in here will repeat every 1000ms 
       number = number + 1; 
       text.innerText = number; 
      }, 1000); 
     </script> 
    </body> 
</html> 

如果你剛開始學習程序,你可能會喜歡學習HTML的JavaScript更多,而不用擔心關於現在的服務器,因爲您可以更動態地查看程序的結果。一個好的資源可能是Codecademy或直接從Mozilla

+0

感謝您的回答:-)我嘗試了代碼,但它只顯示「1」,所以我添加了「document.write(number);」在window.setInterval中。當我啓動它時,我會得到「1」,而不是「2」,但是頁面會一直加載並且不會發生任何更改。這是正常的嗎? – user2762504

+0

這聽起來不對,不。 'text.innerText = number;'應該注意更新數字,所以document.write不應該是必需的。 JSFiddle.net是玩這些東西的好地方 - 它將JavaScript(功能),HTML(結構)和CSS(樣式)分開。這裏是一個例子:http://jsfiddle.net/hephistocles/ggx9w34e/ – cjol