¿Por qué "echo strcmp ('60 ',' 100 ');" en la salida php 5?

La documentación de PHP sobre esta función es un poco escasa y he leído que esta función compara los valores ASCII, así que ...

echo strcmp('hello', 'hello');
//outputs 0 as expected - strings are equal.
echo '<hr />';

echo strcmp('Hello', 'hello');
//outputs -32, a negative number is expected as 
//uppercase H has a lower ASCII value than lowercase h.
echo '<hr />';

echo strcmp('60', '100');
//outputs 5.

El último ejemplo me está confundiendo. No entiendo por qué está generando un número positivo.

ASCII Valor de 0 = 48ASCII Valor de 1 = 49

ASCII Valor de 6 = 54

Valor ASCII total de '60' = (54 + 48) = 102

Valor ASCII total de '100' = (49 + 48 + 48) = 145

Las funciones strcmp () dicen que '60' es "mayor" que '100' aunque parezca que el valor ASCII la longitud de la cadena de '100' es mayor que '60'

¿Alguien puede explicar por qué?

Gracia

Respuestas a la pregunta(6)

Su respuesta a la pregunta