Php 是否将数字表示为类似的缩写(13500=>;13.5k)?

Php 是否将数字表示为类似的缩写(13500=>;13.5k)?,php,javascript,Php,Javascript,好的,我为这个bug编写了我自己的JS代码,我确信我可以使用一些更全面的东西。但是我的Google mojo不起作用了——有没有帮助我找到开源代码来表示数字,就像高数字(102500=>102.5K,18601=>18.6K,等等)一样 JS或PHP会很棒,否则我可以翻译 谢谢 这将为您提供一个非常好的示例,说明如何做到这一点: 该链接是针对兆字节的,但是如果您想要数千字节的链接,只需更改$mod变量并更改给定的名称即可。然后它将完全符合您的目的。这将为您提供一个非常好的示例,说明如何做到这一点

好的,我为这个bug编写了我自己的JS代码,我确信我可以使用一些更全面的东西。但是我的Google mojo不起作用了——有没有帮助我找到开源代码来表示数字,就像高数字(102500=>102.5K,18601=>18.6K,等等)一样

JS或PHP会很棒,否则我可以翻译


谢谢

这将为您提供一个非常好的示例,说明如何做到这一点:


该链接是针对兆字节的,但是如果您想要数千字节的链接,只需更改$mod变量并更改给定的名称即可。然后它将完全符合您的目的。

这将为您提供一个非常好的示例,说明如何做到这一点:

该链接是针对兆字节的,但是如果您想要数千字节的链接,只需更改$mod变量并更改给定的名称即可。然后它将完全符合您的目的。

或直接检查

代码粘贴

/**
*返回人类可读的大小
*
*@作者艾丹·李斯特
*@version 1.3.0
*@linkhttp://aidanlister.com/repos/v/function.size_readable.php
*@param int$size字节大小
*@param字符串$max最大单位
*@param string$system'si'表示si,bi'表示二进制前缀
*@param string$retstring返回字符串格式
*/
函数大小\u可读($size,$max=null,$system='si',$retstring='%01.2f%s'))
{
//挑选单位
$systems['si']['prefix']=数组('B','K','MB','GB','TB','PB');
$systems['si']['size']=1000;
$systems['bi']['prefix']=数组('B','KiB','MiB','GiB','TiB','PiB');
$systems['bi']['size']=1024;
$sys=isset($systems[$system])?$systems[$system]:$systems['si'];
//显示的最大单位
$depth=count($sys['prefix'])-1;
if($max&&false!=$d=array\u search($max,$sys['prefix'])){
$depth=$d;
}
//环路
$i=0;
而($size>=$sys['size']&&$i<$depth){
$size/=$sys['size'];
$i++;
}
返回sprintf($retstring,$size,$sys['prefix'][$i]);
}
或直接检查

代码粘贴

/**
*返回人类可读的大小
*
*@作者艾丹·李斯特
*@version 1.3.0
*@linkhttp://aidanlister.com/repos/v/function.size_readable.php
*@param int$size字节大小
*@param字符串$max最大单位
*@param string$system'si'表示si,bi'表示二进制前缀
*@param string$retstring返回字符串格式
*/
函数大小\u可读($size,$max=null,$system='si',$retstring='%01.2f%s'))
{
//挑选单位
$systems['si']['prefix']=数组('B','K','MB','GB','TB','PB');
$systems['si']['size']=1000;
$systems['bi']['prefix']=数组('B','KiB','MiB','GiB','TiB','PiB');
$systems['bi']['size']=1024;
$sys=isset($systems[$system])?$systems[$system]:$systems['si'];
//显示的最大单位
$depth=count($sys['prefix'])-1;
if($max&&false!=$d=array\u search($max,$sys['prefix'])){
$depth=$d;
}
//环路
$i=0;
而($size>=$sys['size']&&$i<$depth){
$size/=$sys['size'];
$i++;
}
返回sprintf($retstring,$size,$sys['prefix'][$i]);
}

+1。可能要在所有局部变量上声明“var”。在我看来,KB的大小,无论是KiB还是KB,都应该是1024.+1。可能需要在所有局部变量上声明“var”。在我看来,KB的大小,无论是KiB还是KB,都应该是1024。
/**
 * Return human readable sizes
 *
 * @author      Aidan Lister <aidan@php.net>
 * @version     1.3.0
 * @link        http://aidanlister.com/repos/v/function.size_readable.php
 * @param       int     $size        size in bytes
 * @param       string  $max         maximum unit
 * @param       string  $system      'si' for SI, 'bi' for binary prefixes
 * @param       string  $retstring   return string format
 */
function size_readable($size, $max = null, $system = 'si', $retstring = '%01.2f %s')
{
    // Pick units
    $systems['si']['prefix'] = array('B', 'K', 'MB', 'GB', 'TB', 'PB');
    $systems['si']['size']   = 1000;
    $systems['bi']['prefix'] = array('B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB');
    $systems['bi']['size']   = 1024;
    $sys = isset($systems[$system]) ? $systems[$system] : $systems['si'];

    // Max unit to display
    $depth = count($sys['prefix']) - 1;
    if ($max && false !== $d = array_search($max, $sys['prefix'])) {
        $depth = $d;
    }

    // Loop
    $i = 0;
    while ($size >= $sys['size'] && $i < $depth) {
        $size /= $sys['size'];
        $i++;
    }

    return sprintf($retstring, $size, $sys['prefix'][$i]);
}