首页 > 代码库 > 26进制(字母)转十进制算法

26进制(字母)转十进制算法

下面是一个26进制转十进制的算法,目的是将字母(A~Z)转化为十进制的数字。主要用途是为了解决使用phpExcel解析Excel表格的时候,在Excel表格中列是由字母表示的,而很多情况下我们需要了解到当前的列是哪一行,也就是列的行数。所以才有了此算法。

 

function litterToNumber($lineTag){    $transfArray =  array(‘A‘=>1,‘B‘=>2,‘C‘=>3, ‘D‘=>4, ‘E‘=>5,    ‘F‘=>6, ‘G‘=>7, ‘H‘=>8, ‘I‘=>9, ‘G‘=>10, ‘K‘=>11, ‘L‘=>12,‘M‘=>13, ‘N‘=>14, ‘O‘=>15, ‘P‘=>16, ‘Q‘=>17, ‘R‘=>18, ‘S‘=>19, ‘T‘=>20, ‘U‘=>21,‘V‘=>22,‘W‘=>23,‘X‘=>24,‘Y‘=>25,‘Z‘=>26);        $len = strlen($lineTag);    for($i = $len-1; $i >= 0; $i --)    {        $value += $transfArray[$temp[$i]]*pow(26,$len-1-$i);     }}

 

26进制(字母)转十进制算法