У меня был такой код:
$alias = 'myalias';
echo "<pre>";
echo "
ALIAS: $alias
ROUND: ", intval($alias, 36) , "\n" ,
"AGAIN: ", base_convert(intval($alias, 36), 10, 36)
;
echo "<hr>";
$alias = '27xk3q';
echo "<pre>";
echo "
ALIAS: $alias
ROUND: ", intval($alias, 36) , "\n" ,
"AGAIN: ", base_convert(intval($alias, 36), 10, 36)
;
Раньше это работало и до сих пор работает на моем домашнем компьютере Mac. Выход:
ALIAS: myalias
ROUND: 2147483647
**AGAIN: zik0zj**
ALIAS: 27xk3q
ROUND: 134255366
AGAIN: 27xk3q
Но когда я загружаю это на свой сервер Linux, это отражает разные вещи!
ALIAS: myalias
ROUND: 49962861028
**AGAIN: myalias**
ALIAS: 27xk3q
ROUND: 134255366
AGAIN: 27xk3q
Как видите, строка "myalias
" просто печатается как сама по себе в версии PHP для Linux.
Если это не работает или является неправильным кодом, мне нужно знать надежный способ проверки, является ли строка действительной версией целого числа base36 или нет.
Спасибо!