Wie erhalte ich ein Währungssymbol anhand des Währungscodes?

22

Ich kann den Währungscode aus dem Bestellobjekt erhalten. Wie kann ich ein Währungssymbol daraus ableiten? Vorschläge werden geschätzt.

Sukeshini
quelle
1
Wenn Sie eine dieser Antworten nützlich fanden, kennzeichnen Sie sie bitte als richtige Antwort.
Fabian Blechschmidt

Antworten:

61

Probier diese:

Mage::app()->getLocale()->currency(Mage::app()->getStore()->getCurrentCurrencyCode())->getSymbol();
Praful S Zaru
quelle
Bitte markieren Sie diese Antwort als richtig.
Gilles Lesire
27

Speichern Sie Währungscode zB. USD

$currency_code = Mage::app()->getStore()->getCurrentCurrencyCode();

Währungssymbol speichern zB. $

$currency_symbol = Mage::app()->getLocale()->currency( $currency_code )->getSymbol();

Speichern Sie den Namen der Währung, z. US Dollar

$currency_name = Mage::app()->getLocale()->currency( $currency_code)->getName();
Suman KC
quelle
Dies funktioniert nicht in 1.7
Gilles Lesire
6

Folgendes hat funktioniert.

// store currency symbol eg. $ 
$currency_symbol = Mage::app()->getLocale()->currency( $currency_code )->getSymbol();
Sukeshini
quelle
3

Versuchen:

$currencyCode   = '';
$currency       = $order->getOrderCurrency(); //$order object
if (is_object($currency)) {
    $currencyCode = $currency->getCurrencyCode();
}
$currencySymbol = Mage::app()->getLocale()->currency($currencyCode)->getSymbol();
var_dump($currencySymbol);
MagePsycho
quelle
Mage :: app () -> getLocale () gibt das aktuelle Gebietsschema-Objekt zurück, nicht wahr? Ich möchte das Währungssymbol des angegebenen Währungscodes unabhängig vom Gebietsschema erhalten.
Sukeshini
Bitte überprüfen Sie einmal den Code. Es sollte funktionieren.
MagePsycho
Es funktioniert nicht, wenn Sie in Ihrem Gebietsschema ein anderes Symbol festgelegt haben. Es würde immer noch Ihr Standardwährungssymbol zurückgeben.
Shathish
@MagePsycho: Aktiviert. Es funktioniert nicht.
Sukeshini
Können Sie Ihren Code einfügen? Ich habe es gerade getestet und es hat gut funktioniert.
MagePsycho
2

Mit einem beliebigen Währungscode können Sie das Symbol mit Zend_Locale ableiten:

$curr = new Zend_Currency('en_US');
echo $curr->getSymbol();
Philwinkle
quelle
Entsprechend Ihrer Lösung müssen wir das Gebietsschema übergeben, um das Zend_Currency Objekt zu erstellen, oder? Was ich erwartet hatte, war, dass es eine Möglichkeit gibt, ein Währungssymbol unabhängig vom Gebietsschema zu erhalten? Ich meine, wenn wir nur den Währungscode übergeben, bekommen wir dann ein Währungssymbol in Magento CE 1.7?
Sukeshini
Sie können jedes Gebietsschema an zend currency übergeben
philwinkle
Mein Problemhintergrund ist so. Ich habe mehrere Geschäfte mit mehreren Websites. Ich erstelle eine PHP-Datei, die außerhalb des Projekts ausgeführt wird und die gesamte Auftragserfassung unabhängig vom Geschäft oder einem anderen Faktor abruft. In diesem Fall kann ich, wenn ich alle Einzelheiten einer Bestellung erhalte, den Gesamtbetrag der Bestellung und den Währungscode als separate Werte erhalten. Ich möchte das Währungssymbol erhalten und die Gesamtsumme der Bestellung als vollständigen Betrag in meiner PHP-Datei anzeigen. Ich kann also nicht das gewünschte Gebietsschema angeben. Danke im Voraus.
Sukeshini
2

Übergeben Sie einfach den Wert in Variable .. Gibt den aktuellen Preis für das Währungsformat zurück

$Formatted_Price = Converted Price with Currency 
$Variable_Price  = Your Variable value
$Formatted_Price= Mage::helper('core')->currency($Variable_Price, true, false);
Ashvini Marwal
quelle