sleep 的复杂问题

WBOY
WBOYoriginal
2016-06-23 13:32:58885parcourir

<?phpecho date('h:i:s') . "<br />";?><IFRAME width="100" height="100" border=0 name=top marginWidth=0 frameSpacing=0 marginHeight=0 src="2.php" frameBorder=0 noResize scrolling=no vspale="0"></IFRAME><?phpsleep(3);//暂停:把进程挂起一段时间?>


上面代码,它现在是暂停以后才执行IFRAME
要怎么改,让sleep不影响到IFRAME里面的2.php


回复讨论(解决方案)

这是体系问题
IFRAME 要在发送到浏览器以后,由浏览器执行
但你把 php 挂起了 3 秒(sleep(3)),于是 IFRAME 要到 php 重新运行页后才会被发送

sleep是php的方法,而html是必须等php执行完才返回给浏览器的。

你可以这样写来实现。

<?phpecho date('h:i:s') . "<br />";?><IFRAME width="100" height="100" border=0 name=top marginWidth=0 frameSpacing=0 marginHeight=0 src="2.php" frameBorder=0 noResize scrolling=no vspale="0"></IFRAME><?php// 加入这两句先把之前的内容输出到浏览器ob_flush();flush();sleep(3);//暂停:把进程挂起一段时间echo 'next';?>

楼上的还是不行,我想要的是,sleep不影响到IFRAME里面的2.php

当然不行!因为你的思路本身就是错误的

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn