站長資訊網
最全最豐富的資訊網站

php ipv6格式怎么轉換

php ipv6格式轉換的方法:首先創建一個PHP示例文件;然后定義一個“$ipv6”;最后通過“gmp_strval(gmp_init($ipv6long,2),10);”將ipv6轉為數字即可。

php ipv6格式怎么轉換

本文操作環境:windows7系統、PHP7.1版,DELL G3電腦

php ipv6格式怎么轉換?

PHP中將ip轉為數字(ipv6)

將ivp6的ip地址轉為數字后存入數據庫中

將ipv6轉為數字(正整數):

對于ipv6格式的ip地址,我們無法使用ip2long()函數直接進轉換,只能通過其它方式進行轉換,下面將貼出網友weissner在PHP手冊(http://php.net/manual/zh/function.ip2long.php#94477)留下解決方法,在此之前,需要大家注意的是,需將php.ini文件中,extension=php_gmp.dll之前的注釋符號‘;’去掉,因為代碼中將用到改擴展中的函數。。

將ipv6轉為數字的代碼如下:

$ipv6 = 'FEDC:BA98:7654:3210:FEDC:BA98:7654:3210'; $ip_n = inet_pton($ipv6); $bits = 15; // 16 x 8 bit = 128bit $ipv6long=''; while ($bits >= 0) {         $bin = sprintf("%08b",(ord($ip_n[$bits])));         $ipv6long = $bin.$ipv6long;         $bits--; } echo gmp_strval(gmp_init($ipv6long,2),10); // 結果為:338770000845734292534325025077361652240

如大家所見,ipv6的地址轉為數字之后,有38個數字,數據庫中的bigint也無法存下,所以大家還需要將數據庫中的字段類型轉為char或varchar類型。

另附代碼,判斷ip是ivp4還是ipv6,并將ip轉為數字格式:

$ip = '192.168.101.100'; //$ip = 'FEDC:BA98:7654:3210:FEDC:BA98:7654:3210'; if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {     echo sprintf('%u',ip2long($ip));exit;   } else if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) {   $ip_n = inet_pton($ip); $bits = 15; // 16 x 8 bit = 128bit $ipv6long='';     while ($bits >= 0) {         $bin = sprintf("%08b",(ord($ip_n[$bits])));         $ipv6long = $bin.$ipv6long;         $bits--;     }     echo gmp_strval(gmp_init($ipv6long,2),10);exit; }

推薦學習:《PHP視頻教程》

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产精品污WWW一区二区三区| 国产精品自在线天天看片| 一本色道久久综合亚洲精品| 日韩精品一区二区三区中文字幕| 国产成人亚洲精品无码AV大片 | 国内精品一区二区三区最新| 精品无人区一区二区三区在线| 日韩精品一区二区三区色欲AV| 亚洲精品国产美女久久久| 精品久久人人爽天天玩人人妻| 成人国内精品久久久久影院| 日韩不卡免费视频| 日韩精品在线一区二区| 国产女精品视频在ktv| 国产精品成人无码免费| 嫩草影院在线观看精品视频| 久久精品青草社区| 精品无码专区亚洲| 国产微拍精品一区二区 | 日韩三级一区二区| 成人网站免费大全日韩国产| 成人99国产精品| 精品剧情v国产在免费线观看| 国产精品久久久久乳精品爆| 国产欧美另类久久久精品图片| 欧美激情国产精品视频一区二区| 国产精品国产福利国产秒拍| 国产精品国产三级国产an| 国产精品亚洲综合久久| 亚洲精品久久无码| 香蕉久久精品国产| 国产精品视频公开费视频| 国产精品夜夜爽范冰冰| 国产成人精品男人的天堂网站| 国产亚洲精品91| 亚洲欧洲日韩国产综合在线二区| 国产日韩AV免费无码一区二区三区| 日韩人妻无码精品久久久不卡| 日韩高清在线高清免费| 人妻老妇乱子伦精品无码专区| 国产精品99无码一区二区|