我试图获得每3秒计算一次的目录大小。计算成功,大小显示出来,但没有更新。下面是当前的代码:
<script type='text/javascript'>
window.onload = sizeRefresh;
function updatesize() {
$dir_size = <?php
$dir = "pics";
function dirSize($directory) {
$size = 0;
foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory)) as $file){
$size+=$file->getSize();
}
echo json_encode(round($size/1024,0) . " KB<br>" . round($size/1024/1024,0) . "MB<br>" . round($size/1024/1024/1024,0) . "GB" );
}
dirSize($dir)
?>;
var hsize = document.getElementById('sizemark');
hsize.innerHTML = $dir_size
}
function sizeRefresh() {
setInterval("updatesize()", 3000);
}
</script>
<h1 id='sizemark' > size </h1>
我做错了什么?
谢谢。
这仅仅是因为php部分的代码只工作一次。相反,您应该每3秒(30-60秒更好)向服务器发出新的请求-重新加载页面(不是个好主意)或使用ajax。