2017-08-02 58 views
0

我正在使用ajax運行一個簡單的PHP腳本,其中包含數字。測試ajax是否會在發生每個回顯時顯示它,或者如果它在顯示任何內容之前等待整個腳本完成。ajax是否必須等待PHP腳本才能完成顯示輸出

<?php 
    echo '1'; 
    sleep(5); 
    echo '2'; 
    sleep(5); 
    echo '3'; 
    sleep(5); 
    echo '4'; 
    sleep(5); 
    echo '5'; 
?> 

這表明我等待整個腳本在顯示數字之前完成。

我想知道是否有可能輸出每個回聲,因爲它發生,類似於你會怎麼看它的殼呢?

回答

0

沒有那是不可能的,因爲PHP腳本必須運行和返回它的輸出之前,它提供給AJAX請求。

+0

或者使用javascript作爲服務器端語言。 – Twinfriends

0

不,不可能等待分形結果。但是您可以使用websockets來實現此行爲。

例如,您可以使用php庫Ratchet或使用javascript(或其他語言)作爲服務器。

0

關於如何實現你所需要的,有許多不同的方式,技術和軟件。

這是給你一個基本而簡單的例子:https://github.com/panique/php-long-polling

它是基於長輪詢技術。

不過,我會建議你使用與sockJs庫centrifu,去一個大型項目。