在PHP中将字母转换为字母位置

时间:2014-05-14 11:31:37

标签: php

$my_alphabet = "T";

上述字符“T”应打印字母表的确切位置/编号。即20

所以,如果

$my_alphabet = "A" ;
  • 我应该能够获得字母表的位置。即1

我怎样才能做到这一点。

我看到将数字转换为字母...但反过来并不存在。

谢谢, Kimz

3 个答案:

答案 0 :(得分:20)

使用ascii值:

ord(strtoupper($letterOfAlphabet)) - ord('A') + 1

在ASCII中,字母按字母顺序排序,所以......

答案 1 :(得分:4)

如果字母不是大写字母,您可以添加此行代码以确保您获得正确的字母位置

$my_alphabet = strtoupper($my_alphabet);

因此,如果您获得'T''t',它将始终返回正确的位置。

否则@bwoebi的答案将完美地完成工作

答案 2 :(得分:3)

你应该小心(大写,小写):

<?php
$upperArr = range('A', 'Z') ;
$LowerArr = range('a', 'z') ;
$myLetter = 't';

if(ctype_upper($myLetter)){
    echo (array_search($myLetter, $upperArr) + 1); 
}else{
    echo (array_search($myLetter, $LowerArr) + 1); 
}
?>