Je suis en train d'écrire un rapport en PHP qui doit parfois afficher des montants en devise négative. Les montants en devise sont stockés dans la base de données comme "-44.00". Idéalement, ce numéro devrait être «(44,00 $)» sur le rapport. Je sais que je peux écrire une fonction semi-compliquée pour détecter si le nombre est négatif et insérer manuellement la parenthèse, mais je me demandais s'il y avait une fonction PHP pratique qui peut le faire pour moi avant de réinventer la roue. J'ai cherché autour et n'ai rien trouvé qui semble faire cette tâche exacte. Je sais à propos de money_format, mais je ne vois aucun moyen de faire la partie négative/parenthèse. Gardez à l'esprit que le code doit fonctionner que le nombre soit négatif ou positif.Existe-t-il une fonction PHP pour formater un montant en devise dans un format de comptabilité?
2
A
Répondre
7
http://www.php.net/manual/en/function.money-format.php
echo money_format('%(n', '-44.00');
1
function format_currency($amount) {
if($amount < 0)
return "($".$amount.")";
else return "$".$amount;
}
0
Hmm sorte ... mais ce serait encore sortie le signe moins quand il est négatif. Je changerais cette fonction à quelque chose comme:
function accting_format($amount) {
if ($amount < 0) return '($' . abs($amount) . ')';
return '$' . $amount;
}
Notez l'ABS() autour du montant est entre parenthèses ont déjà été émis.
Questions connexes
- 1. Comment formater correctement le texte en fonction de la devise
- 2. JavaScript Valider la devise Montant
- 3. Formater un nombre comme devise dans un JTable?
- 4. Comment formater un int comme devise en C#?
- 5. divisé devise et le montant d'une chaîne
- 6. Comment formater une date dans un format donné
- 7. Format de devise persistante dans Cocoa sur un périphérique qui peut facilement changer Format de région
- 8. Possibilité de formater un flottant dans un format non scientifique?
- 9. Imprimer le format de la devise en PHP
- 10. monnaie au format avec un symbole de devise au recto
- 11. Système de comptabilité multi-pays Devise par défaut
- 12. Format de montant négatif de l'USD avec un signe moins, pas entre crochets (Java)
- 13. Utilisation de NSNumberFormatter pour remplir les espaces entre un symbole de devise et la valeur
- 14. Utiliser PHP pour formater un email?
- 15. Format de devise Excel Interop
- 16. Comment analyser une devise Montant (US ou UE) à la valeur flottante en Java
- 17. Mise en œuvre de la comptabilité PHP/comptabilité générale open source
- 18. Comment formater la date dans SQLite en fonction des paramètres de format de paramètres régionaux actuels?
- 19. PHP: Formater une chaîne numérique en insérant une virgule
- 20. Comment formater un fichier PLOT3D pour ParaView?
- 21. Comment utiliser NSDateFormatter pour formater un NSString?
- 22. Format de devise ASP.NET Charting Control
- 23. Format de devise Excel de base avec POI Apache
- 24. Existe-t-il une fonction VB.NET pour formater un nombre en ordinal?
- 25. format dateheure - formater un datetime avec ou sans l'heure
- 26. Format du code PHP en utilisant une norme de codage
- 27. Comment formater un fichier en 4 colonnes?
- 28. Existe-t-il une fonction PHP pour formater l'heure (pas la date)?
- 29. PHP: format de numéro au format local
- 30. Fonction PHP pour obtenir le format de la date?
En essayant cela, il n'ajoute pas le signe dollar. J'ai lu la documentation de money_format et je ne vois toujours pas comment ajouter le signe dollar. – DWilliams
Pour plus de clarté, si j'appelle "money_format ('% (n', $ row ['paymentamount'])" quand paymentamount est 100, il renvoie (100.00) – DWilliams
@DWilliams, vous pouvez écrire votre propre print_money_format ($ amount) plutôt PHP est une langue internationale et prend en charge de nombreuses devises, il serait stupide d'imprimer un $ par défaut, encore plus sillier d'exiger un autre argument (et de casser les implémentations existantes) en vous faisant spécifier le symbole monétaire :) –