Вы должны использовать функцию hexdec PHP.
hexdec('FFFFFF'): 16777215
hexdec('123456'): 1193046
и т.д.
Вы говорите, что эти значения не верны? Или вы по ошибке использовали dechex?
Обновление на основе вашего комментария, в котором говорится, что цвет "# 123456" должен быть "5649426" в формате "Long Int":
5649426 в базе 16 равен 0x563412, поэтому ясно, что для вашего формата требуется BGR вместо RGB.
Итак, сначала создайте строку «BGR» из строки «RGB», а затем передайте ее в hexdec:
$rgb = '123456';
$bgr = substr($rgb,4,2) . substr($rgb,2,2) . substr($rgb,0,2);
print hexdec($bgr);
выход 5649426
.