Definition and UsageThe decbin() function returns a string that contains binary equivalent of given decimal number argument. This function returns a string with binary digits. Syntaxdecbin ( int $number ) : string Parameters
Return ValuesPHP decbin() function returns a binary number inside string. PHP VersionThis function is available in PHP versions 4.x, PHP 5.x as well as PHP 7.x. ExampleLive Demo Following example calculates binary equivalent of 13 and returns '1101' − <?php $arg=13; $val=decbin($arg); echo "decbin(" . $arg . ") = " . $val; ?> OutputThis will produce following result − decbin(13) = 1101 ExampleLive Demo Following example shows that fractional part of given number is ignored. Hence 9.99 is treated as 9 which '1001' in binary system. − <?php $arg=9.99; $val=decbin($arg); echo "decbin(" . $arg . ") = " . $val; ?> OutputThis will produce following result − decbin(9.99) = 1001 ExampleLive Demo If string is provided as argument, result is 0 − <?php $arg="Hello"; $val=decbin($arg); echo "decbin(" . $arg . ") = " . $val; ?> OutputThis will produce following result − decbin(Hello) = 0 ExampleLive Demo For negative decimal number, conversion is done using 2's complement method. Following example shows result on 64 bit system <?php $arg=-10; $val=decbin($arg); echo "decbin(" . $arg . ") = " . $val; ?> OutputThis will produce following result − decbin(-10) = 1111111111111111111111111111111111111111111111111111111111110110
Updated on 29-Jun-2020 08:40:45
Melakukan Operasi MatematikaPHP memiliki beberapa fungsi bawaan yang membantu kalian melakukan apa saja mulai dari penambahan atau pengurangan sederhana hingga perhitungan lanjutan. Kalian telah melihat cara melakukan operasi matematika dasar di bab operator PHP. Mari kita lihat contoh di bawah ini: <?php echo 7 + 3; // 0utputs: 10 echo 7 - 2; // 0utputs: 5 echo 7 * 2; // 0utputs: 14 echo 7 / 2; // 0utputs: 3.5 echo 7 % 2; // 0utputs: 1 ?> Setiap operasi matematika memiliki tingkatannya sendiri; umumnya perkalian dan pembagian dilakukan sebelum penambahan dan pengurangan. Namun, tanda kurung dapat mengubah prioritas ini; ekspression yang terlampir di dalam tanda kurung selalu dievaluasi terlebih dahulu, terlepas dari tingkat presedensi operasi, seperti yang ditunjukkan pada contoh berikut: <?php echo 5 + 4 * 10; // 0utputs: 45 echo (5 + 4) * 10; // 0utputs: 90 echo 5 + 4 * 10 / 2; // 0utputs: 25 echo 8 * 10 / 4 - 2; // 0utputs: 18 echo 8 * 10 / (4 - 2); // 0utputs: 40 echo 8 + 10 / 4 - 2; // 0utputs: 8.5 echo (8 + 10) / (4 - 2); // 0utputs: 9 ?> Pada bagian berikut kita akan melihat beberapa fungsi PHP bawaan yang paling sering digunakan dalam melakukan operasi matematika. Mendapatkan Nilai Absolut dari Sebuah AngkaNilai absolut integer atau float dapat ditemukan dengan fungsi abs(), seperti yang ditunjukkan dalam contoh berikut: <?php echo abs(5); // 0utputs: 5 (integer) echo abs(-5); // 0utputs: 5 (integer) echo abs(4.2); // 0utputs: 4.2 (double/float) echo abs(-4.2); // 0utputs: 4.2 (double/float) ?> Seperti yang kalian lihat jika angka yang diberikan negatif, nilai yang dikembalikan adalah positif. Tetapi, jika angkanya positif, fungsi ini hanya mengembalikan angkanya. Membulatkan Nilai Fractional Atas atau BawahFungsi ceil() dapat digunakan untuk membulatkan nilai fraksional hingga nilai integer tertinggi berikutnya, sedangkan fungsi floor() dapat digunakan untuk membulatkan nilai fraksional ke nilai integer terendah berikutnya, seperti yang ditunjukkan pada contoh berikut: <?php // Round fractions up echo ceil(4.2); // 0utputs: 5 echo ceil(9.99); // 0utputs: 10 echo ceil(-5.18); // 0utputs: -5 // Round fractions down echo floor(4.2); // 0utputs: 4 echo floor(9.99); // 0utputs: 9 echo floor(-5.18); // 0utputs: -6 ?> Mendapatkan Akar Kuadrat dari Sebuah AngkaKalian dapat menggunakan fungsi sqrt() untuk menemukan akar kuadrat dari angka positif. Fungsi ini mengembalikan nilai khusus NAN untuk angka negatif. Berikut contohnya: <?php echo sqrt(9); // 0utputs: 3 echo sqrt(25); // 0utputs: 5 echo sqrt(10); // 0utputs: 3.1622776601684 echo sqrt(-16); // 0utputs: NAN ?> Menghasilkan Angka RandomFungsi rand() dapat digunakan untuk menghasilkan angka acak (random). Kalian bisa menentukan rentangnya dengan passing argumen min, maks, seperti ditunjukkan dalam contoh berikut: <?php // Generate some random numbers echo rand() . "<br>"; echo rand() . "<br>"; // Generate some random numbers between 1 and 10 (inclusive) echo rand(1, 10) . "<br>"; echo rand(1, 10) . "<br>"; ?> Jika fungsi rand() dipanggil tanpa argumen opsional min, maks, maka fungsi tersebut akan mengembalikan angka pseudo-random antara 0 dan getrandmax(). Fungsi getrandmax() menunjukkan possible random value, yang hanya 32767 pada platform Windows. Jadi, jika kalian memerlukan rentang yang lebih besar dari 32767, kalian cukup menentukan argumen min dan max. Mengkonversi Bilangan Desimal ke Biner dan sebaliknyaFungsi decbin() digunakan untuk mengubah angka desimal menjadi angka biner. Sedangkan pasangannya fungsi bindec() mengubah angka dari biner menjadi desimal. <?php // Convert Decimal to Binary echo decbin(2); // 0utputs: 10 echo decbin(12); // 0utputs: 1100 echo decbin(100); // 0utputs: 1100100 // Convert Binary to Decimal echo bindec(10); // 0utputs: 2 echo bindec(1100); // 0utputs: 12 echo bindec(1100100); // 0utputs: 100 ?> Mengkonversi Bilangan Desimal ke Heksadesimal dan SebaliknyaFungsi dechex() digunakan untuk mengubah angka desimal menjadi representasi heksadesimal. Sedangkan, fungsi hexdec() digunakan untuk mengubah string heksadesimal menjadi angka desimal. <?php // Convert decimal to hexadecimal echo dechex(255); // 0utputs: ff echo dechex(196); // 0utputs: c4 echo dechex(0); // 0utputs: 0 // Convert hexadecimal to decimal echo hexdec('ff'); // 0utputs: 255 echo hexdec('c4'); // 0utputs: 196 echo hexdec(0); // 0utputs: 0 ?> Mengonversi Angka Desimal ke Oktal dan sebaliknyaFungsi decoct() digunakan untuk mengubah angka desimal menjadi representasi oktal. Sedangkan fungsi octdec() digunakan untuk mengubah angka oktal menjadi angka desimal. <?php // Convert decimal to octal echo decoct(12); // 0utputs: 14 echo decoct(256); // 0utputs: 400 echo decoct(77); // 0utputs: 115 // Convert octal to decimal echo octdec('14'); // 0utputs: 12 echo octdec('400'); // 0utputs: 256 echo octdec('115'); // 0utputs: 77 ?> Konversi Nomor dari Satu Basis Sistem ke Sistem LainnyaFungsi base_convert() dapat digunakan untuk mengonversi angka dari satu sistem basis ke sistem lainnya. Misalnya, kalian dapat mengubah desimal (base 10) menjadi biner (base 2), heksadesimal (base 16) menjadi oktal (base 8), oktal ke heksadesimal, heksadesimal ke desimal, dan seterusnya. Fungsi ini menerima tiga parameter: jumlah untuk dikonversi, basis saat ini, dan basis untuk dikonversi. Sintaks dasarnya adalah sebagai berikut: base_convert(number, frombase, tobase); Di sini, angka dapat berupa integer atau string yang mewakili integer. Baik frombase dan tobase harus antara 2 dan 36, inklusif. Angka dalam angka dengan basis (base) lebih tinggi dari 10 akan diwakili dengan huruf a-z, di mana a berarti 10, b berarti 11 dan z berarti 35. Berikut adalah contoh sederhana untuk menunjukkan bagaimana fungsi ini bekerja: <?php // Convert decimal to binary echo base_convert('12', 10, 2); // 0utputs: 1100 // Convert binary to decimal echo base_convert('1100', 2, 10); // 0utputs: 12 // Convert decimal to hexadecimal echo base_convert('10889592', 10, 16); // 0utputs: a62978 // Convert hexadecimal to decimal echo base_convert('a62978', 16, 10); // 0utputs: 10889592 // Convert decimal to octal echo base_convert('82', 10, 8); // 0utputs: 122 // Convert octal to decimal echo base_convert('122', 8, 10); // 0utputs: 82 // Convert hexadecimal to octal echo base_convert('c2c6a8', 16, 8); // 0utputs: 60543250 // Convert octal to hexadecimal echo base_convert('60543250', 8, 16); // 0utputs: c2c6a8 // Convert octal to binary echo base_convert('42', 8, 2); // 0utputs: 100010 // Convert binary to octal echo base_convert('100010', 2, 8); // 0utputs: 42 // Convert hexadecimal to binary echo base_convert('abc', 16, 2); // 0utputs: 101010111100 // Convert binary to hexadecimal echo base_convert('101010111100', 2, 16); // 0utputs: abc ?> |