酷!學園

技術討論區 => 程式討論版 => PHP程式設計討論區 => 主題作者是: neverwinter 於 2009-06-17 00:47

主題: PHP中的sleep函數失效
作者: neverwinter2009-06-17 00:47
先放上問題代碼

代碼: [選擇]
for($i=1;$i<10;$i++){
echo '1';
sleep(1);
}

理應要完全顯示10個1,需要共10秒的時間
可是我1秒都不用就全load出來了~
明顯sleep函數失效了~
請問,是什麼原因可以導致這情況?

有說是因為cache關係,可是我加了clearstatcache()函數,仍然沒有得到改善~
會是php.ini的設定問題嗎@@?
主題: 回覆: PHP中的sleep函數失效
作者: TyroneYeh2009-06-17 00:54
你可以先 echo date('h:i:s') . "\n";
再 sleep 後再一次 echo date('h:i:s') . "\n";
看看時間就知道有沒有生效

我在想,這東西到 client 時應該是一下就出來了!!
因為 php 不是 client 端的程式,都是在 server 端產生結果後直接輸出 html 給 client!!
主題: 回覆: PHP中的sleep函數失效
作者: neverwinter2009-06-17 01:05
http://rotten.byethost11.com/a/style/test.php

已經測試了,測驗代碼為
代碼: [選擇]
echo date('h:i:s')."<br>";
sleep(10);
echo date('h:i:s');

就像你看,根本沒有sleep- -" :'(

如果是真的如你說,那麼sleep函數到底有什麼用-口-
主題: 回覆: PHP中的sleep函數失效
作者: Darkhero2009-06-17 01:19
http://rotten.byethost11.com/a/style/test.php

已經測試了,測驗代碼為
代碼: [選擇]
echo date('h:i:s')."<br>";
sleep(10);
echo date('h:i:s');

就像你看,根本沒有sleep- -" :'(

如果是真的如你說,那麼sleep函數到底有什麼用-口-

看起來那台是個 free hosting ?...
用個 phpinfo() 看看吧, 有可能是 sleep 被關起來了...

同樣的 code 在我的主機上很正常.
代碼: [選擇]
01:18:48
01:18:58
主題: 回覆: PHP中的sleep函數失效
作者: TyroneYeh2009-06-17 01:24
怪了! 我 server 上就有效耶
應該是 Darkhero 先進說的那樣子
主題: 回覆: PHP中的sleep函數失效
作者: Darkhero2009-06-17 01:36
人家在論壇上面的 KB 都有寫了...
http://byet.net/showthread.php?t=2162
引用
The following PHP functions are disabled :
----------------------------------------------------------------

exec,system,passthru,shell_exec,escapeshellarg,esc apeshellcmd,proc_close,proc_open,ini_alter,dl,pope n,curl_exec,popen,pcntl_exec,socket_accept,socket_ bind,socket_clear_error,socket_close,socket_connec t,socket_create_listen,socket_create_pair,socket_c reate,socket_get_option,socket_getpeername,socket_ getsockname,socket_last_error,socket_listen,socket _read,socket_recv,socket_recvfrom,socket_select,so cket_send,socket_sendto,socket_set_block,socket_se t_nonblock,socket_set_option,socket_shutdown,socke t_strerror,socket_write,stream_socket_client,strea m_socket_server,fsockopen,pfsockopen,stream_set_ti meout,chown,getrusage,get_current_user,set_time_li mit,getmyuid,getmypid,dl,leak,listen,chgrp,link,sy mlink,dlopen,proc_nice,proc_get_stats,proc_termina te,shell_exec,sh2_exec,posix_getpwuid,posix_getgrg id,posix_kill,ini_restore,mkfifo,dbmopen,dbase_ope n,filepro,filepro_rowcount,posix_mkfifo,putenv,sleep
主題: 回覆: PHP中的sleep函數失效
作者: neverwinter2009-06-17 14:37
噢噢,原來是網存問題 :-\
小弟下次要努力點爬文|||  :-*"
很感謝各位大大的解答-口-!!
主題: 回覆: PHP中的sleep函數失效
作者: ticky2010-09-08 15:59
ob_start();

for ($i=1; $i<10;$i++) {

echo $i;
ob_flush();
flush();
sleep(2);
}