Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 11 févr. 2010 à 04:46
Un snippet c'est très souvent juste un implémentation d'un algorithme pour montrer comment on peut l'implémenter dans un langage en particulier. Normalement, ils doivent être posté sur ce site : http://www.codyx.org/.
ca fait des années que je developpe... et je n'ai jamais entendu parler de Snippet ? C'est quoi ce truc ?
Quant au Kio, ou Ko, effectivement la norme étant toute récente (une dizaine d'années) je savais pas !
Moi je me refere juste à ce qu'affichais mon mac dans les années 90 sur la taille des fichiers...
Merci poour l'info
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 10 févr. 2010 à 21:47
Salut,
Quatre petites choses :
1/ Ce n'est pas une source. C'est un snippet. Sa place n'est donc pas ici, mais sur codyx.
2/ Histoire d'alléger les tests...
if ($a < 10) {
// blabla
}
elseif ($a < 20) {
// blabla
}
Si le premier test n'est pas vérifié, alors lors du second, on sait que $a est OBLIGATOIREMENT supérieur ou égal à 10. Inutile donc de faire deux tests dans les elseif.
3/ Les unités utilisés ne sont pas valides. Il faudrait utiliser Kio, Mio, Gio, Tio, etc.
Les unités Ko, Mo, Go, To, etc sont valables pour des puissances de 10. Toi, tu utilises des puissances de 2.
Cf : http://fr.wikipedia.org/wiki/M%C3%A9bioctet
4/ Sinon, je te propose une variante plus claire, plus courte et plus flexible (possibilité de choisir le nombre de décimales) :
11 févr. 2010 à 04:46
10 févr. 2010 à 21:57
Quant au Kio, ou Ko, effectivement la norme étant toute récente (une dizaine d'années) je savais pas !
Moi je me refere juste à ce qu'affichais mon mac dans les années 90 sur la taille des fichiers...
Merci poour l'info
10 févr. 2010 à 21:47
Quatre petites choses :
1/ Ce n'est pas une source. C'est un snippet. Sa place n'est donc pas ici, mais sur codyx.
2/ Histoire d'alléger les tests...
if ($a < 10) {
// blabla
}
elseif ($a < 20) {
// blabla
}
Si le premier test n'est pas vérifié, alors lors du second, on sait que $a est OBLIGATOIREMENT supérieur ou égal à 10. Inutile donc de faire deux tests dans les elseif.
3/ Les unités utilisés ne sont pas valides. Il faudrait utiliser Kio, Mio, Gio, Tio, etc.
Les unités Ko, Mo, Go, To, etc sont valables pour des puissances de 10. Toi, tu utilises des puissances de 2.
Cf : http://fr.wikipedia.org/wiki/M%C3%A9bioctet
4/ Sinon, je te propose une variante plus claire, plus courte et plus flexible (possibilité de choisir le nombre de décimales) :
function convert_octets($size, $precision = 0) {
static $units = array('o', 'Kio', 'Mio', 'Gio', 'Tio', 'Pio','Eio','Zio','Yio');
$pow = 0;
while ($size >= 1024) {
$size /= 1024;
$pow++;
}
return round($size, $precision) . $units[$pow];
}
Pour afficher la taille d'un fichier : echo convert_octets(filesize($file), 2);
Mais ça aussi c'est un snippet ;)