Código:
<?php
function ean($cadena)
{
$cadena = strrev($cadena);
$i = 0;
while($i < strlen($cadena))
{
if($i%2 == 0) $impares += $cadena[$i];
else $pares += $cadena[$i];
$i++;
}
$suma = $pares + ($impares*3);
return 10 -($suma%10);
}
// Prueba
echo ean("750105922532"); // devuelve 9
?>
Lo unico asi que veo es que haces 10 - la suma en mod 10, y te da el codigo directamente
Un saludo