Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apakah ip2long() di PHP sama dengan fungsi INET_ATON() di MySQL?

Mereka hampir persis sama. ip2long terkadang mengembalikan nilai negatif karena PHP menggunakan angka yang ditandatangani untuk penilaian, sedangkan MySQL menggunakan yang tidak ditandatangani.

Keduanya dievaluasi sebagai x*(2^24) + y*(2^16) + z*(2^8) + w*(2^0) , tetapi di PHP, karena lama ditandatangani, akan menunjukkan nilai negatif untuk alamat IP tertentu.

For signed long, the range is 
(2^31) - 1 = −2,147,483,648 to +2,147,483,647

Jadi, alamat saat diterjemahkan ke lebih dari +2.147.483.647 akan membungkus dan memberikan nilai negatif.

ip2long("254.254.254.254"); // -16843010

tautan ini menjelaskan ini secara rinci.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa string koneksi driver MySQL JDBC?

  2. Penggeser Formulir HTML

  3. Mengonversi MySQL ke Pembuat Kueri Doktrin. Masalah dengan JIKA dan CONCAT. Atau pendekatan lain untuk subkueri pada pilih

  4. MySQL memesan dengan duplikat atas terlebih dahulu

  5. Cari string dalam kolom teks di MySQL