No entiendo por qué haces tanto truco.
La letra A tiene un valor ordinal que puedes obtener con ord(), ahora, si obtienes dicho valor ordinal de tus parámetros y le restas el ordinal de 'A' te debería dar de vuelta el valor numérico esperado.
Algo así:
Código PHP:
$i = 22;
$c = ord('A');
$foo = 'F';
$bar = ord($foo);
$candy = $bar - $c;
echo $candy;
Y aquí el resultado:
https://ignite.io/code/511a9e19ec221ef55b000001