inet_ntop не возвращает правильное значение

Я в недоумении здесь. Я вставил IP-адрес в таблицу MySql, используя inet_pton в двоичном (16) столбце, и когда я пытаюсь получить его с помощью inet_ntop, я получаю странный результат.

он отображает: 23a6::

Он должен отображать: 35.166.0.0

    $Results = $this->DB->GetResults( "SELECT * FROM {$this->Table} WHERE type = '{$this->BlockType['Network']}'" );



    foreach($Results->Results as $Range)
    {

       echo  inet_ntop($Range->RangeStart);
    }

Шестнадцатеричное значение в базе данных: 0x23a6000000000000000000000000000000

Вроде должно работать. Где я ошибаюсь?


person user3098629    schedule 20.11.2018    source источник
comment
Как вы выяснили, что 0x23a6000000000000000000000000000000 было 35.166.0.0? Как он был вставлен? При использовании MySQL это выглядит как 0x353938303831353336 при просмотре inet_aton. Вы можете использовать функцию inet_ntoa, как в этом примере.   -  person danblack    schedule 20.11.2018
comment
Я использовал inet_pton, чтобы вставить его в базу данных.   -  person user3098629    schedule 20.11.2018
comment
Вам может понадобиться упаковать/распаковать, например этот ответ < /а>   -  person danblack    schedule 20.11.2018