PHP字节到千字节

时间:2013-09-25 10:24:30

标签: php byte

我有类似的东西

<td><?php echo $row_rsPhoto['size']; ?></td>

并以字节为单位显示文件大小,可以用千字节来表示,我正在尝试这样做 - 函数

public function size_as_kb()
{
    if ($this->size < 1024) {
        return "{$this->size} bytes";
    } elseif ($this->size < 1048576) {
        $size_kb = round($this->size/1024);
        return "{$size_kb} KB";
    } else {
        $size_mb = round($this->size/1048576, 1);
        return "{$size_mb} MB";
    }
}

我不知道这是否有效,以及如何将$row_rsPhoto['size'];与功能

连接起来

提前感谢您的帮助

5 个答案:

答案 0 :(得分:4)

看看这个讨论

PHP filesize MB/KB conversion

然后你可以使用

<td><?php echo size_as_kb($row_rsPhoto['size']); ?></td>

答案 1 :(得分:2)

输出Kilo Bytes ..

<td><?php echo $row_rsPhoto['size'] >> 10; ?></td>

答案 2 :(得分:0)

你写了你的答案。只需要添加函数的参数。

public function size_as_kb($yoursize) {
  if($yoursize < 1024) {
    return "{$yoursize} bytes";
  } elseif($yoursize < 1048576) {
    $size_kb = round($yoursize/1024);
    return "{$size_kb} KB";
  } else {
    $size_mb = round($yoursize/1048576, 1);
    return "{$size_mb} MB";
  }
}

通过写

来调用它
$photo_size = size_as_kb($row_rsPhoto['size']);

答案 3 :(得分:0)

使用函数参数:

 echo size_as_kb($row_rsPhoto['size']);

public function size_as_kb($size=0) {
    if($size < 1024) {
    return "{$size} bytes";
    } elseif($size < 1048576) {
    $size_kb = round($size/1024);
    return "{$size_kb} KB";
    } else {
    $size_mb = round($size/1048576, 1);
    return "{$size_mb} MB";
    }
    }

答案 4 :(得分:0)

只需要调用该函数并向其中添加参数即可。

<td><?php echo size_as_kb($row_rsPhoto['size']); ?></td>

 public function size_as_kb($size) {
if($size < 1024) {
return "{$size} bytes";
} elseif($size < 1048576) {
$size_kb = round($size/1024);
return "{$size_kb} KB";
} else {
$size_mb = round(size/1048576, 1);
return "{$size_mb} MB";
}
}