私はこのようなコードを持っていました:
$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バージョンであるかどうかをチェックする確実な方法を知る必要があります。
ありがとう!