Hàm filesize()
sẽ lấy kích thước của tập tin truyền vào.
filesize ( string $filename
) : int
$filename
là đường dẫn tới file.
– Lưu ý: Vì loại số nguyên của PHP đã được signed và nhiều nền tảng sử dụng môi trường 32bit, một số hàm hệ thống tệp có thể trả về kết quả không mong muốn cho các tệp lớn hơn 2GB.
<?php // outputs e.g. somefile.txt: 1024 bytes $filename = 'somefile.txt'; echo $filename . ': ' . filesize($filename) . ' bytes'; ?>
<?php function human_filesize($bytes, $decimals = 2) { $sz = 'BKMGTP'; $factor = floor((strlen($bytes) - 1) / 3); return sprintf("%.{$decimals}f", $bytes / pow(1024, $factor)) . @$sz[$factor]; } ?>
<?php // get contents of a file into a string $filename = "/usr/local/something.txt"; $handle = fopen($filename, "r"); $contents = fread($handle, filesize($filename)); fclose($handle); ?>Bạn nên gọi đến hàm Clearstatcache () trước khi gọi filesize () Tôi đã mất một khoảng thời gian để tìm ra vấn đề này.
function FileSizeConvert($bytes) { $bytes = floatval($bytes); $arBytes = array( 0 => array( "UNIT" => "TB", "VALUE" => pow(1024, 4) ), 1 => array( "UNIT" => "GB", "VALUE" => pow(1024, 3) ), 2 => array( "UNIT" => "MB", "VALUE" => pow(1024, 2) ), 3 => array( "UNIT" => "KB", "VALUE" => 1024 ), 4 => array( "UNIT" => "B", "VALUE" => 1 ), ); foreach($arBytes as $arItem) { if($bytes >= $arItem["VALUE"]) { $result = $bytes / $arItem["VALUE"]; $result = str_replace(".", "," , strval(round($result, 2)))." ".$arItem["UNIT"]; break; } } return $result; } ?>
Các bạn có thể xem chi tiết hơn trên php.net.
Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm filesize() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé. Cảm ơn các bạn đã ghé thăm codetutam.com
Bình luận: