我有这样的代码:
$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
" 字符串在 Linux 版本的 PHP 中只是打印为自身。
如果这不起作用或代码错误,我需要知道一种检查字符串是否是整数的有效 base36 版本的万无一失的方法。
谢谢!