Tôi đang sử dụng ini_get('upload_max_filesize')
để nhận kích thước tải lên tệp tối đa.
Kết quả là 5M
.Tôi làm cách nào để tải lên tệp tối đa bằng byte?
Cách dễ nhất để nhận mã này bằng byte là gì?
Tôi đang sử dụng ini_get('upload_max_filesize')
để nhận kích thước tải lên tệp tối đa.
Kết quả là 5M
.Tôi làm cách nào để tải lên tệp tối đa bằng byte?
Cách dễ nhất để nhận mã này bằng byte là gì?
Bạn có thể sử dụng return_bytes from the documentation:
function return_bytes($val) {
$val = trim($val);
$last = strtolower($val[strlen($val)-1]);
switch($last) {
// The 'G' modifier is available since PHP 5.1.0
case 'g':
$val *= (1024 * 1024 * 1024); //1073741824
break;
case 'm':
$val *= (1024 * 1024); //1048576
break;
case 'k':
$val *= 1024;
break;
}
return $val;
}
return_bytes(ini_get('post_max_size'));
Đối với PHP 7 giải pháp sẽ trở lại: 'Một phi giá trị số cũng được hình thành gặp'
Nó có thể được sử dụng:
function return_bytes($val)
{
preg_match('/(?<value>\d+)(?<option>.?)/i', trim($string), $matches);
$inc = array(
'g' => 1073741824, // (1024 * 1024 * 1024)
'm' => 1048576, // (1024 * 1024)
'k' => 1024
);
$value = (int) $matches['value'];
$key = strtolower(trim($matches['option']));
if (isset($inc[$key])) {
$value *= $inc[$key];
}
return $value;
}
return_bytes(ini_get('post_max_size'));
huh .. Tôi chỉ nhận được 'Gọi để undefined chức năng return_bytes()' – Steven
Tôi đang sử dụng php v5.3 – Steven
Ông đang đề cập đến chức năng được nêu trong liên kết ở trên. –