Задать вопрос

Декодировать значение поля в формате hex в MySQL

Доброе утро.
В mysql есть поле ip, тип char(8), кодировка cp1251_bin. Хранятся ip адреса в таком формате — d4e82335.
Вопрос — как декодировать ip адрес в нормальный вид на php или прямо в mysql запросе?
  • Вопрос задан
  • 3862 просмотра
Подписаться 3 Оценить 2 комментария
Решения вопроса 1
alexxxst
@alexxxst
SELECT INET_NTOA(CONV(ip, 16, 10));
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Napseg
@Napseg
на php
$hex='d4e82335';
for($i=0;$i<7;$i=$i+2){
$dec[$i]=hexdec(substr($hex,$i,2));		
}
$dec="$dec[0].$dec[2].$dec[4].$dec[6]";
echo($dec);
Ответ написан
Комментировать
Я вижу, что для MySQL решение найдено, но я всё равно предложу на PHP, а то тут страшные велосипеды нарисовались.
$str = 'd4e82335';
echo long2ip(hexdec($str)); //212.232.35.53
Ответ написан
interrupt_controller
@interrupt_controller
>Возможно это hex-написание IP-адреса 212.232.35.53

если так, то вот прототип функции на php:
int hexdec(string hex_string)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы