Am Sonntag, 6. Januar 2008 12:28 schrieb Alain Williams: Hello,
> You are confusing the TYPE and the VALUE. > > What type hinting means is: > > * is the TYPE correct ? If so succeed. > > * can the VALUE be 100% converted to the desired TYPE (eg '5' to int) ? > If so succeed. > > * fail <?php echo (int) "1", "<br>\n"; // => 1 echo (int) "1a", "<br>\n"; // => 1 echo (int) "1.2", "<br>\n"; // => 1 echo (int) "a1", "<br>\n"; // => 0 ?> Which cases should be allowd for? function foo(int $bar); IMHO only foo("1"); and maybe also foo("1.0"); But then the type conversion for type hinting is different from the type conversion in all other cases which makes PHP probably harder to learn. IMHO a system that makes sure that a variable must contain only specific values would be more useful. $int_number: int; $float_number: float; $range: int 1..12; // month $email_address: emailaddress; $options: options['foo', 'bar', 'alice', 'bob']; The problem is still should "1a" convert and assigned to $int_number? But because value checking is a different context than type hinting this is maybe easier to learn. tschuess [|8:) http://www.sven-drieling.de/ -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php