Cara menggunakan is_long php.ini

Cara menggunakan is_long php.ini

Assalamualaikum, Pak. Wb. kali ini kita akan belajar tentang tipe angka pada php. Perlu diingat bahwa dalam PHP, jika kita mendeklarasikan nilai integer dalam sebuah variabel, maka tipe datanya akan langsung terdeteksi oleh PHP. Pada tipe bilangan PHP terdapat dua tipe yaitu Integer dan Float

Tipe data Integer adalah nilai/angka numerik tanpa desimal. Bisa negatif atau positif. Contoh 20, 100, -43, -99, dst. Sedangkan Float adalah nilai/angka numerik yang memiliki desimal, misalnya 23. 4, 332. 53, 3. 4, dll. Tipe data bilangan bulat antara -2147483648 sampai 2147483647, diatas atau dibawah angka tersebut, akan disimpan dalam tipe data Float

Cara mengecek tipe bilangan bulat

Ada 3 fungsi yang disediakan oleh PHP

  • is_int()
  • is_integer() - alias dari is_int()
  • is_long() - alias dari is_int()


<?php
  $x = 100;
  var_dump(is_int($x)); //Output: bool(true)
  var_dump(is_integer($x)); //Output: bool(true)
  var_dump(is_long($x)); //Output: bool(true)
  echo "<br>";

  $y = 100.5;
  var_dump(is_int($y)); //Output: bool(false)
?>  

Cara mengecek jenis nomor Float

Ada 2 fungsi yang disediakan oleh PHP

  • is_float()
  • is_double() - alias dari is_float()


<?php
  $x = 10.5;
  var_dump(is_float($x)); //Output: bool(true)
  var_dump(is_double($x)); //Output: bool(true)
  echo "<br>";

  $y = 10;
  var_dump(is_float($y)); //Output: bool(false)
  var_dump(is_double($y)); //Output: bool(false)
?>  
_


Bagaimana? . Sebenarnya masih banyak pembahasan tentang angka di PHP yang bisa anda lihat di dokumentasi PHP di php. bersih

Oke sekian pembahasan kali ini, semoga bermanfaat, terima kasih salam wr. Wb

Bekerja dengan angka dalam PHP mungkin tampak seperti konsep yang sepele tetapi bisa sangat membingungkan. Sekilas terlihat mudah karena PHP menyediakan konversi tipe otomatis. Misalnya, Anda dapat menetapkan nilai bilangan bulat ke variabel dan jenis variabelnya adalah bilangan bulat. Di baris berikutnya, Anda dapat mengatur string ke variabel yang sama dan jenisnya akan berubah menjadi string. Sayangnya, konversi otomatis ini terkadang dapat merusak kode Anda

Ada banyak jenis untuk nilai numerik juga. Dalam tutorial ini, Anda akan belajar tentang bilangan bulat dan float di PHP, serta fungsi yang dapat digunakan untuk menentukan jenis angka yang kita hadapi dan konversi di antara keduanya. Anda juga akan mempelajari cara mengonversi bilangan bulat dan float ke dan dari string numerik

Berbagai Jenis Angka di PHP

Bilangan bulat

Jenis angka paling dasar dalam PHP adalah bilangan bulat. Seperti yang mungkin sudah Anda ketahui, bilangan bulat adalah angka tanpa bagian desimal. Misalnya, 2 adalah bilangan bulat dan 235298 atau -235298 juga bilangan bulat. Di sisi lain, 2. 0 dan 3. 58 adalah pelampung. Kami akan membahasnya lebih detail nanti

Satu hal penting untuk diingat adalah bahwa tidak perlu angka tipe _______2_______55 jika tidak memiliki bagian desimal. Misalnya, _______2________56 hasilnya persis _______2_______57 tetapi jenis hasil ini tetap _______2_______58. Saat Anda mengalikan angka, hasil akhirnya akan menjadi tipe float jika setidaknya salah satu operannya adalah float. Tidak masalah apakah angka terakhir memiliki bagian desimal atau tidak

Selain itu, nilai maksimum yang mungkin dimiliki bilangan bulat dalam PHP pada sistem Anda dapat diperoleh dengan menggunakan konstanta

<?php
59. Nilai yang lebih besar dari nilai yang dikembalikan oleh
<?php
59 akan disimpan sebagai pelampung meskipun terlihat seperti bilangan bulat

Secara umum, Anda akan mengharapkan hasil perkalian dua variabel bertipe

<?php
55 menjadi tipe
<?php
55. Namun, itu tidak benar jika terjadi luapan. Mengalikan lima atau enam angka berbeda dapat dengan mudah membuat Anda keluar dari tipe
<?php
55. Misalnya, hasil _______2________64 adalah float di sistem saya karena melebihi nilai _______2_______59 yaitu _______2_______66

Anda dapat menggunakan fungsi _______2________67 untuk memeriksa apakah suatu bilangan adalah bilangan bulat. Ada dua alias dari fungsi ini yang disebut _______2________68 dan _______2_______69. Keduanya akan memberikan hasil yang sama

Mengambang

Jenis angka paling umum berikutnya yang akan Anda tangani adalah float. Tidak seperti bilangan bulat, yang dalam banyak kasus hanya berupa angka tanpa titik desimal, angka bertipe

<?php
58 dapat direpresentasikan dengan berbagai cara. Nilai _______2________71, _______2_______72, _______2_______73 dan _______2_______74 semuanya pelampung

PHP akan secara otomatis mengonversi angka ke tipe

<?php
_58 setiap kali desimal atau angka yang sangat besar dilibatkan. Tipe
<?php
_58 umumnya dapat menyimpan angka dengan ukuran kira-kira sama dengan
<?php
77. Namun, ini tergantung platform

Nilai

<?php
77 mungkin tampak seperti nilai yang sangat besar—​​dan memang demikian. —tetapi float memiliki presisi maksimum hanya sekitar 14 digit. Angka apa pun dengan digit lebih banyak dari itu akan kehilangan presisi. Itu berarti Anda dapat menyimpan jumlah yang sangat besar, tetapi Anda tidak akan dapat menyimpan informasi tentang nilai yang tepat—dalam banyak kasus, pelampung hanyalah perkiraan

Ada dua fungsi yang dapat digunakan untuk menentukan apakah nilai yang Anda hadapi adalah float. Fungsi-fungsi ini adalah _______2_______79 dan _______2_______80. Sebenarnya, _______2________80 hanyalah alias dari _______2_______79 sehingga Anda dapat menggunakan salah satunya dan mendapatkan hasil yang sama

Tak terhingga dan NaN

Ada dua jenis nilai numerik yang mungkin harus Anda tangani saat menulis program yang berkaitan dengan Matematika. Nilai-nilai ini tak terhingga dan _______2________83 (bukan angka). Kedua nilai ini memerlukan sedikit penjelasan karena berbeda dari yang Anda harapkan

Infinity dalam PHP berbeda dengan infinity dalam kehidupan nyata. Di PHP, nilai numerik apa pun di atas

<?php
84 pada platform dianggap tidak terbatas. Jadi,
<?php
_85 akan memberi Anda ________2______86 di
<?php
87. Anda dapat memeriksa apakah nilai numerik dibatasi atau tidak dibatasi menggunakan fungsi _______2______88 dan _______2_______89

Demikian pula, _______2________83 adalah singkatan dari Not a Number tetapi tidak memeriksa apakah itu nilai numerik atau tidak. Nilai _______2________83 digunakan untuk hasil operasi matematika yang tidak mungkin dilakukan dalam matematika. Misalnya, _______2________92 akan menjadi _______2_______83. Demikian pula, _______2________94 juga akan menjadi _______2_______83. Anda dapat memeriksa apakah nilai yang dikembalikan oleh operasi matematika bukan angka dengan menggunakan fungsi

<?php
96

String Numerik di PHP

Sama seperti PHP yang secara dinamis mengonversi tipe numerik yang berbeda berdasarkan bagaimana nilainya digunakan atau ditetapkan, itu juga dapat menyimpulkan nilai string numerik yang berbeda untuk Anda ubah menjadi angka.

Fungsi _______2________97 dapat membantu Anda menentukan apakah suatu string atau variabel sebenarnya numerik atau tidak. Fungsi ini akan mengembalikan _______2_______98 untuk angka yang ditulis dalam notasi oktal, biner, atau heksadesimal. Ini juga akan mengembalikan _______2_______98 jika angka ditulis dalam notasi eksponensial seperti _______47_______00

Mulai dari PHP7. 0. 0, saat Anda meneruskan string ke _______2________97, itu hanya mengembalikan _______2_______98 jika string terdiri dari tanda opsional, banyak digit, desimal opsional, dan bagian eksponensial opsional. Ini berarti bahwa serangkaian angka yang ditulis dalam format heksadesimal atau biner akan mengembalikan _______47_______03 dari PHP 7. 0. 0 dan seterusnya

PHP secara implisit akan mentransmisikan string numerik yang valid ke angka bila diperlukan. Contoh berikut akan membantu Anda memahami proses ini dengan lebih baik

1
<?php
2
3
$num = "3258712" + 12380;
4
// Output: int(3271092)

5
var_dump($num);
6
<?php
0
<?php
1
<?php
2
// Output: int(3271092)

<?php
4
var_dump($num);
<?php
6
<?php
7
<?php
8
<?php
9
// Output: int(3271092)

2
1
var_dump($num);
2
3
2
4
2
5
2
6
2
7
2
8
var_dump($num);
3
0
3
1
3
2
3
3
3
4
3
5
var_dump($num);
3
7
3
8
3
9
$num = "3258712" + 12380;
0
$num = "3258712" + 12380;
1
$num = "3258712" + 12380;
2
var_dump($num);
$num = "3258712" + 12380;
4
$num = "3258712" + 12380;
5
$num = "3258712" + 12380;
6
$num = "3258712" + 12380;
7
$num = "3258712" + 12380;
8
$num = "3258712" + 12380;
9
var_dump($num);
4
1
4
2
4
3
4
4
4
5
4
6_

Seperti yang Anda lihat, semua string numerik yang valid dikonversi ke nilainya masing-masing sebelum penambahan atau operasi lain dilakukan. Ketik

2
_04 pada akhirnya tergantung pada nilai akhir

Dalam kasus terakhir, string heksadesimal "0xfedd24" tidak diubah menjadi nilai desimal karena PHP 7 tidak menganggapnya sebagai string numerik yang valid

Casting String dan Float ke Integer

Kadang-kadang, Anda harus memasukkan satu jenis nilai numerik ke yang lain. PHP memiliki berbagai fungsi dan teknik untuk melakukannya. Sering kali, konversi akan tersirat dan Anda tidak perlu mengkhawatirkannya. Namun, jika Anda harus melakukan konversi secara eksplisit, teknik yang disebutkan di sini pasti akan membantu

Anda dapat menggunakan _______47________05 atau _______47_______06 untuk mengonversi nilai apa pun menjadi bilangan bulat. Dalam kasus float, nilainya akan selalu dibulatkan menjadi nol. Cara lain untuk mengonversi string dan float menjadi bilangan bulat adalah dengan bantuan fungsi _______47_______07. Keduanya

2
_05 dan
2
07 bekerja dengan cara yang persis sama

1
<?php
2
3
5
9
4
var_dump($num);
1
5
var_dump($num);
3
6
var_dump($num);
5
<?php
0
<?php
2
var_dump($num);
8
<?php
4
6
0
<?php
6
6
2
<?php
7
var_dump($num);
5
<?php
9
2
1
6
7
2
3
6
9
2
4
<?php
01
2
6
var_dump($num);
5
2
8
3
0
<?php
06
3
1
<?php
08
3
3
<?php
10
3
5
var_dump($num);
5
3
7
5
4

Anda harus mencatat bahwa memasukkan string yang meluap ke bilangan bulat akan menetapkan nilai akhir ke nilai bilangan bulat maksimum yang diizinkan. Namun, memasukkan float yang nilainya lebih besar dari nilai bilangan bulat maksimum yang diperbolehkan akan menghasilkan nilai yang berfluktuasi antara

2
10 dan
<?php
66

Dalam situasi tertentu, Anda mungkin harus berurusan dengan angka yang sangat besar tanpa kehilangan presisi. Misalnya, tidak mungkin mendapatkan hasil yang akurat dari perkalian

2
12 dan _______47_______13 menggunakan operator _______47_______14. Ini akan memberi Anda _______47________15 setelah konversi float. Menghitung jawaban sebenarnya, yaitu
2
16, akan memerlukan penggunaan pustaka seperti BCMath. BCMath bekerja dengan menyimpan angka sebagai string dan melakukan operasi aritmatika secara manual. Ingatlah bahwa jika Anda menggunakan BCMath, Anda akan berurusan dengan string, bukan integer dan float

Pustaka tertentu ingin Anda hanya meneruskan nomor bertipe

<?php
55 ke metode mereka, tetapi Anda mungkin tanpa sadar memberi mereka nilai float. Ini mungkin terjadi karena nilainya terlihat seperti int karena tidak memiliki bagian desimal. Ini hampir pasti akan menghasilkan kesalahan jika perpustakaan menggunakan fungsi seperti
2
18 untuk memeriksa apakah nomor yang dikirim adalah tipe bilangan bulat. Dalam kasus seperti itu, selalu bijaksana untuk terlebih dahulu mentransmisikan nomor ke int menggunakan
2
05 atau
2
07 dan kemudian meneruskannya ke fungsi atau metode perpustakaan apa pun

Salah satu contoh ketika situasi seperti itu dapat muncul adalah ketika Anda dihadapkan dengan fungsi Matematika seperti _______47_______21 dan _______47_______22 dll.

2
21 dan
2
22 akan selalu mengembalikan float, bahkan jika Anda memberikan int

1
<?php
2
3
<?php
19
4
<?php
21_______58_______
<?php
23
6
<?php
0
<?php
26
<?php
2
<?php
28__________2______4
2
<?php
___6___2_____6

Satu masalah dengan memasukkan pelampung ke bilangan bulat adalah Anda akan kehilangan bagian desimal dari angka tersebut. Ini mungkin atau mungkin tidak diinginkan. Dalam kasus seperti itu, Anda dapat menggunakan fungsi seperti

2
21 dan hanya menetapkan nomor untuk mengetik int jika nilai sebenarnya sama dengan nilai yang dikembalikan oleh
2
21

1
<?php
2
3
<?php
38
4
5
<?php
41
6
<?php
43
<?php
0
<?php
45
<?php
2
<?php
47
<?php
4
<?php
49
<?php
6
<?php
51
<?php
7
<?php
9
5
4

Katakanlah Anda memiliki perpustakaan yang memungkinkan Anda melakukan aritmatika pecahan dan melempar pengecualian saat Anda meneruskan nomor ke metode

2
27 yang bukan tipe int. Berbagai operasi dapat mengubah angka dalam tipe float meskipun masih bilangan bulat dalam batas minimum dan maksimum tipe int. Menggunakan sesuatu seperti kode di atas akan membantu Anda menangani kasus seperti itu dengan mudah

Kata Penutup

Tutorial ini telah membahas berbagai cara di mana PHP menyimpan angka dan bagaimana Anda dapat menentukan apakah suatu angka adalah jenis tertentu. Misalnya, Anda dapat menggunakan fungsi seperti _______47________18 dan _______2_______79 untuk menentukan jenis angka dan memperluasnya

Seperti yang Anda lihat di tutorial, PHP mendukung konversi tipe otomatis. Ini berarti terkadang bilangan bulat yang lebih kecil seperti _______47_______30 atau _______47_______31 dapat disimpan sebagai pelampung tanpa Anda sadari. Menggunakan angka-angka ini dalam fungsi yang hanya menerima nilai _______2_______55 dapat menghasilkan pengecualian atau kesalahan. Kami belajar bahwa solusi sederhana untuk masalah ini adalah dengan menetapkan angka secara eksplisit ke

<?php
55 jika angka tersebut tidak memiliki bagian desimal dan nilainya tidak berubah selama casting

Setelah membaca tutorial ini, Anda harus dapat menentukan tipe angka atau tipe akhir dari hasil setelah menggunakan berbagai operasi menggunakan fungsi yang telah ditentukan dan juga secara eksplisit mentransmisikannya ke tipe tertentu setelah melakukan beberapa pemeriksaan