¿Qué significa "6k views" y cómo puedo formatear este número en PHP?¿Qué significa '6k views' y cómo puedo formatear el número en PHP
Respuesta
k es la abreviatura de Kilo prefix y significa mil. Entonces 6k significa seis mil.
Puede dar formato a un número de tal manera con la siguiente función usando la división:
function format($number) {
$prefixes = 'kMGTPEZY';
if ($number >= 1000) {
for ($i=-1; $number>=1000; ++$i) {
$number /= 1000;
}
return floor($number).$prefixes[$i];
}
return $number;
}
O usando logaritmo en base 10 y exponenciación:
function format($number) {
$prefixes = 'kMGTPEZY';
if ($number >= 1000) {
$log1000 = floor(log10($number)/3);
return floor($number/pow(1000, $log1000)).$prefixes[$log1000-1];
}
return $number;
}
En 6k
, k
significa kilo
(espero que usted sepa) que es igual a 6000
. Reemplace la cifra de mil con k
, eso es todo. Espero que ayude :)
es kilo promedio kilogramo o kilometro –
bien ahora cómo puedo hacerlo de la manera más fácil en php –
@moustafa: hmmm :) el metro y el gramo son unidades diferentes, solo concéntrese en ** kilo ** parte. – Sarfraz
"6k views" significa 6 kilo-views, o 6,000 views. Se podría extraer este número en PHP usando intval
y multiplicando por 1.000: significa
$val = intval("6k views") * 1000; // = 6000
- k 1000, por lo que los puntos de vista 6k '= 6000 puntos de vista.
- normalmente, en cada acceso a una página, un contador en una base de datos se incrementa en 1. Esto solo se consulta en cada acceso de página e impreso.
- después de consultar el valor, divida por 1000 y agregue una 'k' al número (si el número es> 1000).
'6k views' en StackOverflow se refiere a la cantidad de vistas que ha recibido una pregunta. Significa 6000 vistas.
Si usted está buscando para dar formato a un número de estilo similar en php a continuación, intentar algo así como
$number = "";
if($value > 1000)
{
$number .= floor($value/1000) . "k";
} else {
$number .= $value;
}
echo $number . " views".
Obviamente puede agregar casos para las vistas m, G y T, si lo desea.
+1 para su primera respuesta, Geoff - bienvenido a SO :-) –
Gracias, no se olvide la respuesta de Gumbo. Es claramente más genérico, aunque un poco más críptico para los no iniciados. – Geoff
$number="6000";
$val=($number/1000)."k";
//= 6k
o si el $number="6k";
echo str_replace("k","000",$number);
bueno trik gracias –
abreviada de http://tamlyn.org/2008/12/formatting-bytes-with-significant-figures-in-php/
/** Calculate $value to $sigFigs significant figures */
function sigFig($value, $sigFigs = 3) {
//convert to scientific notation e.g. 12345 -> 1.2345x10^4
//where $significand is 1.2345 and $exponent is 4
$exponent = floor(log10(abs($value))+1);
$significand = round(($value
/pow(10, $exponent))
* pow(10, $sigFigs))
/pow(10, $sigFigs);
return $significand * pow(10, $exponent);
}
/** Format $value with the appropriate SI prefix symbol */
function format($value, $sigFigs = 3)
{
//SI prefix symbols
$units = array('', 'k', 'M', 'G', 'T', 'P', 'E');
//how many powers of 1000 in the value?
$index = floor(log10($value)/3);
$value = $index ? $value/pow(1000, $index) : $value;
return sigFig($value, $sigFigs) . $units[$index];
}
Haciendo *11
porque *10
es demasiado obvio
for($number = 100; $number < 100000000000000000000; $number*=11) {
echo format($number), PHP_EOL;
}
da
100 1.1k 12.1k 133k 1.46M 16.1M 177M 1.95G 21.4G 236G 2.59T 28.5T 314T 3.45P 38P 418P 4.59E 50.5E
Si necesita los decimales, utilizar la solución de lo anterior, otra de Gumbo es más compacto. Da:
100 1k 12k 133k 1M 16M 177M 1G 21G 235G 2T 28T 313T 3P 37P 417P 4E 50E
Esto da un error si el número es 0 – bertmaclin
function sigFig($value, $sigFigs = 3) {
setlocale(LC_ALL, '[email protected]', 'it_IT', 'it');
$exponent = floor(log10(abs($value))+1);
$significand = round(($value
/pow(10, $exponent))
* pow(10, $sigFigs))
/pow(10, $sigFigs);
return $significand * pow(10, $exponent);
}
function format($value, $sigFigs = 3)
{
$numero = $value;
if ($numero > 9999) {
$units = array('', 'k', 'M', 'G', 'T', 'P', 'E');
$index = floor(log10($value)/3);
$value = $index ? $value/pow(1000, $index) : $value;
return sigFig($value, $sigFigs) . $units[$index];
}else{
return number_format($numero, 0, '', '.'); ;
}
//Resultados:
//9999 -> 9.999 views
//10000 -> 10k views
//10200 -> 10,2k views
}
- 1. ¿Cómo puedo formatear un número en dólares en PHP
- 2. ¿Cómo puedo formatear un número con comas?
- 3. ¿Cómo puedo formatear el número solo para mostrar 1 lugar decimal en php?
- 4. ¿Qué significa realmente el número entre paréntesis?
- 5. ¿Cómo formatear un número en Expression Language?
- 6. Mysql VIEWS vs. PHP query
- 7. ¿Qué significa "EGPCS" en PHP?
- 8. Backslash en PHP: ¿qué significa?
- 9. ¿Qué significa "=>" en PHP?
- 10. ¿Qué significa = & mean en PHP?
- 11. ¿Qué significa $ this en PHP?
- 12. ¿Qué significa '<? =' En PHP?
- 13. ¿Qué significa "&" aquí en PHP?
- 14. cómo formatear el correo electrónico de php
- 15. ¿Qué significa el operador PHP = & mean?
- 16. ¿Cómo puedo formatear un número en C# con comas y decimales?
- 17. ¿Qué significa este "iif" en php?
- 18. ¿Qué significa (int) $ _GET ['página'] en PHP?
- 19. ¿Qué significa la variable $ this en PHP?
- 20. ¿Qué significa $$ en el shell?
- 21. Cómo formatear el código en html/css/js/php
- 22. VIEWS y Fluded NHibernate?
- 23. PHP: ¿Qué significa `array (& $ this)`?
- 24. qué significa $ <y $ @ en el archivo
- 25. ¿Cómo puedo formatear un número de serie para tener comas y una ronda?
- 26. ¿Qué significa nuevo yo(); significa en PHP? código
- 27. ¿Qué significa while (true) {mean en PHP?
- 28. ¿Qué significa $ {} en la sintaxis de PHP?
- 29. ¿Qué significa ejecutar PHP en modo silencioso?
- 30. ¿Qué significa >> en PHP?
* (relacionado) * http: //en.wikipedia.org/wiki/SI_prefix – Gordon