Per verificare basta che esegui uno script con i confronti.
Per la questione "il valore numerico di una stringa" è vera la questione del controllo dei primi caratteri, ma quello che "sbagli" è che solo in certi casi la stringa viene convertita nel suo valore numerico, in altri casi è trattata come stringa e basta. Per questo la stringa '5 ciao' in alcuni casi può essere computata come il numero "5", in altri no. Questo fa la differenza. Per vedere "al volo" i casi basta che esegui lo script:
e osservi il risultatoCodice PHP:
$c = 'molte persone'; $e = '5';
var_export($e>$c);