Je dois convertir des chiffres simples (1 à 9) en (01 à 09). Je peux penser à un moyen mais c'est grand et laid et encombrant. Je suis sûr qu'il doit y avoir un moyen concis. Toutes les suggestionsChiffres du pavé numérique dans la chaîne
Répondre
Tout d'abord, votre description est trompeuse. Double
est un type de données en virgule flottante. Vous voulez probablement remplir vos chiffres avec des zéros dans une chaîne. Le code suivant fait que:
$s = sprintf('%02d', $digit);
Pour plus d'informations, reportez-vous à la documentation de sprintf
.
bon travail. cela fonctionne –
'09' et' 08' ne fonctionne pas dans PHP7 –
@HirenBhut Non, cela fonctionne. –
Il y a aussi str_pad
<?php
$input = "Alien";
echo str_pad($input, 10); // produces "Alien "
echo str_pad($input, 10, "-=", STR_PAD_LEFT); // produces "-=-=-Alien"
echo str_pad($input, 10, "_", STR_PAD_BOTH); // produces "__Alien___"
echo str_pad($input, 6 , "___"); // produces "Alien_"
?>
Solution en utilisant str_pad:
str_pad($digit,2,'0',STR_PAD_LEFT);
Benchmark sur php 5,3
Résultat str_pad: 0,286863088608
Res ULT sprintf: 0,234171152115
code:
$start = microtime(true);
for ($i=0;$i<100000;$i++) {
str_pad(9,2,'0',STR_PAD_LEFT);
str_pad(15,2,'0',STR_PAD_LEFT);
str_pad(100,2,'0',STR_PAD_LEFT);
}
$end = microtime(true);
echo "Result str_pad : ",($end-$start),"\n";
$start = microtime(true);
for ($i=0;$i<100000;$i++) {
sprintf("%02d", 9);
sprintf("%02d", 15);
sprintf("%02d", 100);
}
$end = microtime(true);
echo "Result sprintf : ",($end-$start),"\n";
"0$digit"
.. si vous connaissez déjà le seul chiffre!
- 1. UITextField dans une tableAfficher et éliminer le pavé numérique
- 2. comment demander un pavé numérique dans une application web iphone?
- 3. Incrémentation de la valeur numérique dans la chaîne
- 4. Création d'un pavé numérique virtuel: arrêt de l'activation ou de la mise au point du formulaire
- 5. pavé numérique + touche permet de sélectionner du texte dans Visual Studio
- 6. Comment utiliser le pavé tactile du pavé tactile .Net
- 7. Chaîne vide en format numérique
- 8. Chaîne numérique (taille arbitraire) -> Nombre entiers
- 9. Remplacer non numérique par une chaîne vide
- 10. .NET tester une chaîne pour la valeur numérique
- 11. Comment supprimer des chiffres et du texte à partir de la fin d'une chaîne en Javascript
- 12. regex: numérique
- 13. Graveur de pavé tactile dans l'iPhone
- 14. Comment supprimer le caractère non numérique d'une chaîne dans java?
- 15. Comment afficher le clavier numérique sur un EditText dans android?
- 16. Code de hachage numérique de longueur fixe à partir d'une chaîne de longueur variable dans C#
- 17. Saisir un nombre à partir d'une chaîne non numérique
- 18. Comment générer une chaîne à 4 chiffres unique
- 19. Format entier à une chaîne de 5 chiffres
- 20. regex ne supprime pas les chiffres non de chaîne
- 21. Comment diviser une chaîne en parties - Chiffres romains
- 22. Chaîne d'expressions régulières suivie de chiffres en Javascript
- 23. Comment implémenter la validation numérique seulement pour un TextBox?
- 24. Comment vérifier une chaîne commence par un numéro numérique?
- 25. Comment montrer l'état numérique dans l'application MVC
- 26. Comment convertir une valeur de version de chaîne en valeur numérique dans Inno Setup Scripts?
- 27. Comment obtenir la valeur numérique de Enum?
- 28. C#: comment forcer zéro fin dans une chaîne de format numérique?
- 29. Expression régulière pour supprimer les guillemets de chiffres cités dans une chaîne
- 30. Chaîne d'insertion à la position du curseur de UITextField
Copie possible de [Formatage d'un nombre avec des zéros en tête de PHP] (http://stackoverflow.com/questions/1699958/formatting-a-number-with-leading-zeros-in-php) –