Belajar PHP : Operasi String Bagian 2

GRATIS!!! Materi Video Tutorial Web Bot Development Otomatisasi Pekerjaan Menggunakan Browser, Silahkan klik

Download Video Tutorial Web Bot Development

Dalam belajar php kali ini penulis akan coba sedikit jelaskan bagaimana memanfaatkan fungsi substr untuk mengubah suatu variable berisi int/float menjadi nilai mata uang.

Sebagai contohnya, dalam belajar php kali ini penulis akan coba jelaskan bagaimana merubah,

93250750502500 menjadi Rp 93.250.750.502.500.-  Meskipun sebetulnya sudah ada function yang disediakan dalam php.

Berikut adalah source code lengkapnya :

<?php
	$uang = 93250750502500 ;
	$digituang = strlen($uang);
	$bagihabis3 = $digituang % 3 ;
	$sisadigit = $digituang - 3 ;
	for ($i=3;$i <= $digituang; $i+=3)
	{
		$uangasli = substr($uang, -$i, 3).".".$uangasli;
		if ($i >= $sisadigit)
		{
			$uangasli = "Rp ".substr($uang, 0, $bagihabis3).".".$uangasli."-";
		}
	}
	print $uangasli;
?>

 

Cara kerja script ini adalah sebagai berikut,

menghitung berapa digit angka yang akan di konversi.
$digituang = strlen($uang);

selanjutnya bagi habis variable tersebut,
$bagihabis3 = $digituang % 3 ;
hal ini digunakan untuk mewaspadai apabila nanti jumlah nilai uangnya tidak bisa dibagi habis 3.

kemudian,
$sisadigit = $digituang - 3 ;
ini digunakan sebagai persiapan untuk menampilkan angka paling depan, jika jumlah digit uang tidak bisa di habis oleh 3.

dan script intinya yang melakukan pengulangan fungsi substr,
for ($i=3;$i <= $digituang; $i+=3)
{
$uangasli = substr($uang, -$i, 3).".".$uangasli;

jika jumlah digitnya tidak bisa dibagi 3
if ($i >= $sisadigit)
{

maka ambil x angka dari depan.
$uangasli = "Rp ".substr($uang, 0, $bagihabis3).".".$uangasli."-";
}
}

print $uangasli;
?>

sebenarnya pengulangan di atas itu sama dengan fungsi di bawah ini :
$uangasli = substr($uang,-11,2).".".substr($uang,-9,3).".".substr($uang,-6,3).".".substr($uang,-3,3);

Mungkin ada kalanya anda memiliki algoritma sendiri yang lebih mantap, silahkan dikembangkan. Selamat belajar php dipertemuan selanjutnya.

Artikel Terkait :