PHP, geliştiricilerin dinamik ve etkileşimli web uygulamaları oluşturmasına olanak tanıyan, yaygın olarak kullanılan bir sunucu tarafı komut dosyası dilidir. PHP’de en sık kullanılan işlevlerden biri, bir sayıyı para birimi dizesi olarak biçimlendirmek için kullanılan money_format()
işlevidir. Bu fonksiyon, parasal değerleri belirli bir para birimi sembolü, ondalık ayırıcı ve binlik ayırıcı gibi istenen bir formatta görüntülemek için uygun bir yol sağlar. Bu yazıda, money_format()
fonksiyonunun nasıl çalıştığını, çeşitli örneklerle kodunuzda nasıl kullanılacağını ve uygulaması için bazı yaygın kullanım durumlarını keşfedeceğiz. Ayrıca, bu fonksiyonu benzer fonksiyonlarla karşılaştıracak ve onlardan nasıl farklı olduğunu açıklayacağız.
money_format() işlevi nasıl çalışır ve sözdizimi nedir?
money_format()
fonksiyonu iki bağımsız değişken alır: bir biçim stringi ve bir sayısal değer. Biçim dizesi, sayısal değerin para birimi dizesi olarak nasıl biçimlendirileceğini belirtir. money_format()
fonksiyonunun sözdizimi aşağıda verilmiştir:
string money_format ( string $format , float $number )
İlk bağımsız değişken olan $format
, para birimi değerleriyle değiştirilen özel biçimlendirme karakterlerini içeren bir dizedir. İkinci bağımsız değişken olan $number
, para birimi dizesi olarak biçimlendirilecek sayısal değerdir. Fonksiyonun dönüş değeri, biçimlendirilmiş para birimi değerini temsil eden bir dizedir.
Örneklerle fonksiyonun kullanımı
PHP kodunuzda money_format()
fonksiyonunun nasıl kullanılacağına dair bazı örnekleri inceleyelim:
Örnek 1: Temel kullanım
Bu örnekte, temel bir biçim dizesi kullanarak sayısal bir değeri para birimi dizesi olarak biçimlendireceğiz:
<?php
setlocale(LC_MONETARY, 'tr_TR.UTF-8');
$sayi = 1234.56;
$para = money_format('%i', $sayi);
echo $para; // Çıktı: "1234,56 ₺"
?>
Bu örnekte, para birimi dizeleri için Türkçe biçimi kullanmak üzere yerel ayarı “tr_TR.UTF-8” olarak ayarlıyoruz. Biçim dizesi %i
, sayısal değerin para birimi dizesi olarak biçimlendirilmesi gerektiğini belirtir. Bu örneğin çıktısı 1234,56 ₺’dir.
Örnek 2: Para birimi sembolü ekleme
Bu örnekte, biçimlendirilmiş para birimi dizesine bir para birimi sembolü ekleyeceğiz:
<?php
setlocale(LC_MONETARY, 'tr_TR.UTF-8');
$sayi= 1234.56;
$para = money_format('%i TL', $sayi);
echo $para; //
Çıktı: "1234,56 TL"
?>
Bu örnekte, %i
biçim dizesine “TL” para birimi sembolünü ekledik. Bu örneğin çıktısı 1234,56 TL’dir.
Örnek 3: Ondalık ve binlik ayırıcıların belirtilmesi
Bu örnekte, biçimlendirilmiş para birimi dizesi için ondalık ve binlik ayırıcıları belirteceğiz:
<?php
setlocale(LC_MONETARY, 'tr_TR.UTF-8');
$sayi = 1234.56;
$para = money_format('%.2n', $sayi);
echo $para; //
Çıktı: "1.234,56"
?>
Sayısal değerin 2 ondalık basamak ve binler için bir virgül ayırıcı ile biçimlendirilmesi gerektiğini belirtmek için %.2n
biçim dizesini kullandık. Bu örneğin çıktısı 1.234,56’dır.
Örnek 4: Negatif değerleri biçimlendirme
Negatif bir sayısal değeri para birimi dizesi olarak biçimlendireceğiz:
<?php
setlocale(LC_MONETARY, 'tr_TR.UTF-8');
$sayi = -1234.56;
$para = money_format('(%i)', $sayi);
echo $para; //
Çıktı: "(1234,56 ₺)"
?>
Sayısal değerin negatif değerler için parantezlerle biçimlendirilmesi gerektiğini belirtmek için biçim dizesini (%i)
olarak kullandık. Bu örneğin çıktısı (1234,56 ₺) şeklinde oldu.
Örnek 5: Özel bir yerel ayar ile biçimlendirme
Bu örnekte, para birimi dizeleri için Fransızca biçimini kullanmak üzere yerel ayarı özel bir değer olan fr_FR.UTF-8 olarak ayarlıyoruz. biçim dizesi %i
, sayısal değerin para birimi dizesi olarak biçimlendirilmesi gerektiğini belirtir. Bu örneğin çıktısı 1 234,56 € olacak:
setlocale(LC_MONETARY, 'fr_FR.UTF-8');
$miktar = 1234.56;
$france_format = money_format('%i', $miktar);
echo $france_format;
Bu örnekte, yerel ayarı bir Fransız yerel ayarı olan fr_FR.UTF-8 olarak ayarlamak için setlocale()
fonksiyonunu kullanıyoruz. Bu, para birimi dizesinin biçimlendirmesinin Fransız para birimi biçimine göre olacağı anlamına gelir.
Daha sonra $miktar
değişkenine 1234.56 float
değerini atarız. Daha sonra money_format()
fonksiyonunu, %i
format dizesi ve $miktar
değişkenini argüman olarak kullanarak çağırırız. Fonksiyon, para birimi dizesi olarak biçimlendirilmiş $miktar
değerini temsil eden bir dize döndürür.
Son olarak, biçimlendirilmiş para birimi dizesini ekranda görüntülemek için echo
deyimini kullaniyoruz. Bu örneğin çıktısı, para birimi dizeleri için Fransızca biçimi olan 1 234,56 € olacaktır.
Uygulama açısından bu işlev için yaygın kullanım durumları nelerdir?
money_format()
fonksiyonu genellikle para birimi değerleriyle ilgilenen uygulamalarda kullanılır. Bu fonksiyonun yaygın kullanım alanlarından bazıları şunlardır:
- E-ticaret web sitelerinde veya uygulamalarında para birimi değerlerinin görüntülenmesi
- Finansal rapor ve tabloların biçimlendirilmesi
- Fatura veya makbuz oluşturma
- Vergi ve indirimlerin hesaplanması ve görüntülenmesi
Benzer fonksiyonlar
PHP’de sayısal değerleri para birimi dizgeleri olarak biçimlendirmek için kullanılabilecek number_format()
ve sprintf()
gibi başka işlevler de bulunur. Ancak, money_format()
işlevi, yerele özgü biçimlendirmeyi desteklediğinden ve biçim dizesinin kolayca özelleştirilmesine izin verdiğinden, para birimi dizelerini biçimlendirmek için daha esnek ve kullanışlı bir yol sağlar.
Sonuç
Bu yazida, PHP’deki money_format()
fonksiyonunu inceledik ve sayısal değerleri para birimi dizeleri olarak biçimlendirmek için nasıl kullanılacağını öğrendik. Fonksiyonun sözdizimini ele aldık, kodunuzda nasıl kullanılacağına dair birkaç örnek verdik ve yaygın kullanım durumlarını tartıştık. Ayrıca money_format()
fonksiyonunu PHP’deki diğer benzer fonksiyonlarla karşılaştırdık. Bu fonksiyonu PHP uygulamalarınızda kullanarak, para birimi dizelerini özel gereksinimlerinize göre kolayca biçimlendirebilirsiniz.