Kumpulan Function PHP untuk Webmaster

Kumpulan Function PHP untuk Webmaster

Function adalah kode program yang di buat khusus untuk mempersingkat sebuah fungsi yang ingin di lakukan di dalam sebuah penulisan kode program, dan function dapat di panggil berkali-kali untuk melakukan fungsi tertentu dalam penulisan kode program.

Berikut admin lampirkan kumpulan function yang paling dicari webmaster.

1. Terbilang dengan koma

function to_text($x) 
{
    $x = abs($x);
    $angka = array("", "satu", "dua", "tiga", "empat", "lima",
    "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
    $temp = "";
    if ($x < 12) {
        $temp = " ". $angka[$x];
    } else if ($x < 20) {
        $temp = to_text($x - 10). " belas";
    } else if ($x < 100) {
        $temp = to_text($x/10)." puluh". to_text($x % 10);
    } else if ($x < 200) {
        $temp = " seratus" . to_text($x - 100);
    } else if ($x < 1000) {
        $temp = to_text($x/100) . " ratus" . to_text($x % 100);
    } else if ($x < 2000) {
        $temp = " seribu" . to_text($x - 1000);
    } else if ($x < 1000000) {
        $temp = to_text($x/1000) . " ribu" . to_text($x % 1000);
    } else if ($x < 1000000000) {
        $temp = to_text($x/1000000) . " juta" . to_text($x % 1000000);
    } else if ($x < 1000000000000) {
        $temp = to_text($x/1000000000) . " milyar" . to_text(fmod($x,1000000000));
    } else if ($x < 1000000000000000) {
        $temp = to_text($x/1000000000000) . " trilyun" . to_text(fmod($x,1000000000000));
    }     
    return $temp;
}

function tkoma($x)
{
	$str = stristr($x,".");
	$ex = explode('.',$x);

	if(($ex[1]/10) >= 1){
		$a = abs($ex[1]);
	}
	$string = array("nol", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan",   "sembilan","sepuluh", "sebelas");
	$temp = "";

	$a2 = $ex[1]/10;
	$pjg = strlen($str);
	$i =1;


	if($a>=1 && $a< 12){   
		$temp .= " ".$string[$a];
	}
	else if($a>12 && $a < 20){   
		$temp .= to_text($a - 10)." belas";
	}
	else if ($a>20 && $a<100){   
		$temp .= to_text($a / 10)." puluh". to_text($a % 10);
	}
	else{
		if($a2<1){
			while ($i<$pjg){    
				$char = substr($str,$i,1);     
				$i++;
				$temp .= " ".$string[$char];
			}
		}
	}  
	return $temp;
}

function terbilang($x, $style=4) 
{
    if($x<0) {
        $hasil = "minus ". trim(to_text($x));
    }
	else {
		$poin = trim(tkoma($x));
        $hasil = trim(to_text($x));
    }
    switch ($style) {
        case 1:
            $hasil = strtoupper($hasil);
            break;
        case 2:
            $hasil = strtolower($hasil);
            break;
        case 3:
            $hasil = ucwords($hasil);
            break;
        default:
            $hasil = ucfirst($hasil);
            break;
    }
	if($poin)
	{
		$hasil = $hasil." koma ".$poin;
	}
	else{
		$hasil = $hasil;
	}
    return $hasil;
}

## IMPLEMENTASI
echo terbilang(10000);
output : Sepuluh ribu

2. Convert Angka ke Nama Bulan

function tampil_bulan($x = null)
{
    $bulan = array (
		1	=> 'Januari',
		2	=> 'Februari',
		3	=> 'Maret',
		4	=> 'April',
		5	=> 'Mei',
		6	=> 'Juni',
		7	=> 'Juli',
		8	=> 'Agustus',
		9	=> 'September',
		10	=> 'Oktober',
		11	=> 'November',
		12	=> 'Desember');
	if($x == null)
		return $bulan;
	else
		return $bulan[$x];
}

## IMPLEMENTASI
echo tampil_bulan(3);
output : Maret

3. Angka Romawi

function to_romawi($angka){
    $hsl = "";
    if($angka<1||$angka>3999){
        $hsl = "Batas Angka 1 s/d 3999";
    }else{
         while($angka>=1000){
             $hsl .= "M"; $angka -= 1000;
         }
         if($angka>=500){
             if($angka>500){
                 if($angka>=900){
                     $hsl .= "M"; $angka-=900;
                 }else{
                     $hsl .= "D"; $angka-=500;
                 }
             }
         }
         while($angka>=100){
             if($angka>=400){
                 $hsl .= "CD"; $angka-=400;
             }else{
                 $angka-=100;
             }
         }
         if($angka>=50){
             if($angka>=90){
                 $hsl .= "XC"; $angka-=90;
             }else{
                $hsl .= "L"; $angka-=50;
             }
         }
         while($angka>=10){
             if($angka>=40){
                $hsl .= "XL"; $angka-=40;
             }else{
                $hsl .= "X"; $angka-=10;
             }
         }
         if($angka>=5){
             if($angka==9){
                 $hsl .= "IX"; $angka-=9;
             }else{
                $hsl .= "V"; $angka-=5;
             }
         }
         while($angka>=1){
             if($angka==4){
                $hsl .= "IV"; $angka-=4;
             }else{
                $hsl .= "I"; $angka-=1;
             }
         }
    }
    return ($hsl);
}

## IMPLEMENTASI
echo to_romawi(10);
output : X

4. Get IP Address

function GetIP()
{
	if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
		$ip = getenv("HTTP_CLIENT_IP");
	else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
		$ip = getenv("HTTP_X_FORWARDED_FOR");
	else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
		$ip = getenv("REMOTE_ADDR");
	else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
		$ip = $_SERVER['REMOTE_ADDR'];
	else
		$ip = "unknown";

	return($ip);
}

## IMPLEMENTASI
echo GetIP();

5. Limit Character & Words

function limit_words($string, $word_limit)
{
    $words = explode(" ",$string);
    return implode(" ",array_splice($words,0,$word_limit));
}

function limit_char($x, $length)
{
	if(strlen($x)<=$length)
	{
		return $x;
	}
	else{
		$y=substr($x,0,$length);
		return $y;
	}
}

6. Format Number & Currency

function to_number($val) 
{
	$val = preg_replace('/[^0-9]/','',$val); 
	$val = trim($val, '');
	if ($val == "") { $val = 0; }
	return $val;
}

function to_nominal($val)
{
	$isKoma 	= explode(".", $val);
	$spl 	= str_replace(",","",$isKoma[0]);
	if ($spl == ""){
		$res = 0;
	}
	else{
		if($isKoma[1] != null){ $istitik = ".".$isKoma[1]; }else{ $istitik = ""; }
		$res = $spl.$istitik;
	}
	return $res;
}

7. Format Date [Y-m-d to d-m-Y] [d-m-Y to Y-m-d]

function to_date($tanggal, $mode) 
{
	$exp = explode(" ", $tanggal);
	$date = $exp[0];
	if(!empty($date))
	{
		$bulan 	= array("Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");
		$mshort = array("Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des");

		// Y/M/D -> D/M/Y
		if($mode == 'ymd-dmy')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[0];
			$m	= $dt[1];
			$d	= $dt[2];

			$result = $d.'/'.$m.'/'.$y;
		}
		else if($mode == 'dmy-ymd')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[2];
			$m	= $dt[1];
			$d	= $dt[0];

			$result = $y.'-'.$m.'-'.$d;
		}
		else if($mode == 'dmy-m')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$m	= $dt[1];

			$result = $m;
		}
		else if($mode == 'ymd-y')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[0];

			$result = $y;
		}
		else if($mode == 'ymd-m')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$m	= $dt[1];

			$result = $m;
		}
		else if($mode == 'ymd-ym')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[0];
			$m	= $dt[1];

			$result = $y.'-'.$m;
		}
		else if($mode == 'dmy-ym')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[2];
			$m	= $dt[1];

			$result = $y.'-'.$m;
		}
		else if($mode == 'my-ym')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$m	= $dt[0];
			$y	= $dt[1];

			$result = $y.'-'.$m;
		}
		else if($mode == 'ym-my')
		{
			$m	= substr($date, -2);
			$y	= substr($date, 0,4);

			$result = $m.'-'.$y;
		}
		// D/M/Y -> M
		else if($mode == 'dmy-y')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$y	= $dt[2];

			$result = $y;
		}
		else if($mode == 'm-month')
		{
			$m	= $date;
			$result = $bulan[(int)$m-1];
		}
		else if($mode == 'my-month')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$m	= $dt[0];
			$y	= $dt[1];
			
			$result = $bulan[(int)$m-1].' '.$y;
		}
		else if($mode == 'ym-month')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$m	= $dt[1];
			$y	= $dt[0];
			
			$result = $bulan[(int)$m-1].' '.$y;
		}
		else if($mode == 'ymd-month')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$d	= $dt[2];
			$m	= $dt[1];
			$y	= $dt[0];

			$result = $d.' '.$bulan[(int)$m-1].' '.$y;
		}
		else if($mode == 'month-ymd')
		{
			$b = array_search($exp[1], $bulan)+1;
			$d	= $exp[0];
			$m	= ($b < 10) ? "0".$b : $b;
			$y	= $exp[2];

			$result = $y.'-'.$m.'-'.$d;
		}
		else if($mode == 'ymd2-month')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$d	= $dt[2];
			$m	= $dt[1];
			$y	= $dt[0];

			$result = $bulan[(int)$m-1].' '.$y;
		}
		else if($mode == 'dmy-month')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$d	= $dt[0];
			$m	= $dt[1];
			$y	= $dt[2];

			$result = $d.' '.$bulan[(int)$m-1].' '.$y;
		}
		else if($mode == 'ymd-short')
		{
			$dt = preg_split("/[\-,\/]+/", $date);
			$d	= $dt[2];
			$m	= $dt[1];
			$y	= $dt[0];

			$result = $d.' '.$mshort[(int)$m-1].' '.$y;
		}
		else if($mode == 'ymdhis-h')
		{
			$dt = explode(":", $exp[1]);

			$result = $dt[0];
		}
   	return $result;
	}
}

## IMPLEMENTASI
echo to_date('2019-03-16', 'ymd-dmy');
output : 16/03/2019

8. Pencarian Usia

function usia($tanggal, $delimeter = "-")
{
	// DATE DD-MM-YYYY
	list($hari, $bulan, $tahun) = explode($delimeter, $tanggal);
	$selisih_hari	= date('d') - $hari;
	$selisih_bulan	= date('m') - $bulan;
	$selisih_tahun	= date('Y') - $tahun;
	if($selisih_hari < 0 || $selisih_bulan < 0)
	{
		$selisih_tahun--;
	}
	return $selisih_tahun;
}

## IMPLEMENTASI
echo usia('17-01-2000');
echo usia('17/01/2000', '/');
output : 19

9. Time Ago

function timeAgo($curenttime)
{
	$time_ago 		= strtotime($curenttime);

	$cur_time 		= time();
	$time_elapsed 	= $cur_time - $time_ago;
	$seconds 		= $time_elapsed ;
	$minutes 		= round($time_elapsed / 60 );
	$hours 			= round($time_elapsed / 3600);
	$days 			= round($time_elapsed / 86400 );
	$weeks 			= round($time_elapsed / 604800);
	$months 		= round($time_elapsed / 2600640 );
	$years 			= round($time_elapsed / 31207680 );

	if($seconds <= 60){ echo "$seconds seconds ago"; }
	else if($minutes <=60){ 
		if($minutes==1){ echo "one minute ago"; }
		else{ echo "$minutes minutes ago"; }
	}
	else if($hours <=24){
		if($hours==1){ echo "an hour ago"; }
		else{ echo "$hours hours ago"; }
	}
	else if($days <= 7){
		if($days==1){ echo "yesterday"; }
		else{ echo "$days days ago"; }
	}
	else if($weeks <= 4.3){
		if($weeks==1){ echo "a week ago"; }
		else{ echo "$weeks weeks ago"; }
	}
	else if($months <=12){
		if($months==1){ echo "a month ago"; }
		else{ echo "$months months ago"; }
	}
	else{
		if($years==1){ echo "one year ago"; }
		else{ echo "$years years ago"; }
	}
}

## IMPLEMENTASI
// FORMAT "2019-01-17 09:09:09"
echo timeAgo($time_ago);
output : 11 months ago

Itulah beberapa fungsi php yang bisa admin tulis pada tulisan kali ini. Mudah-mudahan anda mencari function serupa. Salam barbar!

Author Profile

Ricki K
Hi my name is Ricki, I am a blogger from Indonesia. Founder of erkamoo.com, Besides creating Web Applications, I also write about Blogging Tips and Tutorials on Programming, Databases, HTML.