|
|
|
ช่วยที่ครับ Get folder size ด้วย php แล้ว Error Fatal error: Maximum execution time of 30 seconds exceeded in 'xxxx' |
|
|
|
|
|
|
|
ได้แล้วครับ ขอบคุณครับ
แต่ถ้าผมดึงข้อมูลทีละหลายๆ folder มีวิธีให้ดึงข้อมูลให้เร็วใหมครับ
เพราะนี่แค่ทดสอบดู folder ขนาด ประมาณ 1GB ยังมีปัญหา ถ้าเอาไปใช้งานจริงจะต้องแสดงข้อมูลของ folder ที่ละ 10 folders แต่ละfolder ขนาดใหญ่กว่า 5 GB มีวิธีใหนช่วยให้ดึงข้อมูลใด้เร็วๆใหมครับ
|
|
|
|
|
Date :
2009-12-12 00:17:42 |
By :
ziix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วแต่ความต้องการน่ะครับว่าต้องการเช็คขนาดของไฟล์บ่อยเท่าไร
จริงๆแล้วควรจะเขียน script shell ขึ้นมามากกว่า ต่อจากนั้นก็ตามความต้องการก็ตั้ง crontab ตามความถี่ที่ต้องการครับ แล้วเก็บข้อมูลขนาดน้ำหนักของ Folder ในฐานข้อมูลก็ได้ หรือ เก็บใน File text หรือ xml แล้วก็เรียกใช้ผ่าน PHP อีกทีครับ คงจะเร็วกว่านี้เยอะครับ
|
|
|
|
|
Date :
2009-12-12 00:27:57 |
By :
debutant |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
script shell เขียวใน windows ได้เปล่า ???
|
|
|
|
|
Date :
2009-12-12 00:46:05 |
By :
ziix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โอ้... คุณตั้ง Apache ลงบน windows เหรอครับ ...
อันนี้ก็คงน่าจะมีวิธีทำคล้ายๆกัน ผ่าน windows นะครับ จาก shell ก็คงมาเป็น .bat ส่วน crontab ก็คงต้องหาดูว่ามีอะไรบ้างใน windows ครับ
ผมใช้แต่ Linux ครับ windows นี้ผมไม่ถนัดครับ
|
|
|
|
|
Date :
2009-12-12 03:17:39 |
By :
debutant |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
function foldersize( $path )
{
$size = 0;
if( $dir = @opendir( $path )) {
while(($file = readdir($dir)) !== false ) {
if( is_dir( "$path/$file" ) && $file != '.' && $file != '..' ) {
$size += foldersize( "$path/$file" );
}
if( is_file( "$path/$file" )) {
$size += filesize( "$path/$file" );
}
}
closedir($dir);
}
return $size;
}
$sizes['files'] = 0;
if( $dir = @opendir( '.' )) {
while(($file = readdir($dir)) !== false ) {
if( is_dir( "$file" ) && $file != '.' && $file != '..' ) {
$sizes[$file] = foldersize( "$file" );
}
if( is_file( "$file" )) {
$sizes['files'] += filesize( "$file" );
}
}
closedir($dir);
}
$totsize = 0;
foreach( $sizes as $fsize ) {
$totsize += $fsize;
}
echo "<table>";
foreach( $sizes as $key => $size ) {
$perc = 100 * $size / $totsize;
$width = 4 * $perc;
$percstr = number_format( $perc, 1 ) . '%';
$sizestr = number_format( $size );
printf( '<tr><td>%s</td><td align="right">%s</td><td><img src="red_dot.gif" width="%s" ' .
'height="10" border="0" alt="%s"> %s</td>', $key, $sizestr, $width, $percstr,$percstr );
}
echo "</table>";
?>
Go to : [url=https://www.thaicreate.com/php/forum/025442.html]get folder size - พี่ๆ มี code ตรวจสอบขนาดของ โฟรเดอ แบบตามพาทเปล่าครับ เช่น c:\windows[/url]
|
|
|
|
|
Date :
2012-01-17 06:24:58 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|