google books api会为每本书返回一个volumeid。这个volumeid是这样的字符串
AZ5J6B1-4BoC
UvK1Slvkz3MC
OBM3AAAAIAAJ
所以有大写字母,小写字母,短划线( - )下划线(_)等字符
那么是否有一个将这些字符转换为整数的库?
我也可以将字符串转换为某些数字,如
[A-Z]=[0-25]
[a-z]=[26-50]
[special characters like -,_,]=[51-...]
以上自煮脚本是否很好或者是否有某些标准函数在php中完成这项工作?
答案 0 :(得分:5)
简单使用http://www.php.net/manual/en/function.ord.php
function num($text)
{
$num=null;
for ($i = 0; $i < strlen($text); $i++)
{
$num =$num.ord($text[$i]);
}
return($num);
}
示例10183491225753109122105505667。它是30位长的数字,但如果您想要一个唯一的数字,那就是它。
答案 1 :(得分:1)
为此,没有标准功能。我们为此编写了自定义代码。
<?php
function AsciiToInt($char){
$success = "";
if(strlen($char) == 1)
return "char(".ord($char).")";
else{
for($i = 0; $i < strlen($char); $i++){
if($i == strlen($char) - 1)
$success = $success.ord($char[$i]);
else
$success = $success.ord($char[$i]).",";
}
return "char(".$success.")";
}
}
echo AsciiToInt("<br>");//outputs char(60,98,114,62)
?>