Re: E_RECOVERABLE_ERROR - 5.1.6 to 5.2.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2007-01-03 at 17:49 +0000, Roman Neuhauser wrote:
>
> If you dare to use dynamic features in PHP you're begging to have your
> throat cut by some call to undefined method, or hop in to lala land with
> an "undefined member variable access" warning... If problems with the
> "dynamic typing" of PHP end in somewhat undynamic fatal errors, your
> only choice is to have all paths in the program statically verified,
> IOW, steer completely clear of the dynamic features. That'll be a
> terribly tedious job.
> 
> You can do this in Python (completely safe and meaningful):
> 
> def f(any):
>     print "%s" % any
> 
> You can even call any method on any object safely:
> 
> def g(o):
>     o.f()
> 
> If o doesn't have a callable member called "f", you'll get an exception
> you can catch:
> 
> def g(o):
>     try:
>         o.f()
>     except AttributeError:
>         print >> stderr, "oops!"
> 
> The lack of global error handlers allows mixing of independently
> developed software, that's quite dynamic.

Not to get into this argument but the PHP equivalent is:

<?php

if( method_exists( $o, 'f' ) )
{
    $o.f();
}
else
{
    fprintf( stderr, 'oops!' );
}

?>

Cheers,
Rob.
-- 
.------------------------------------------------------------.
| InterJinn Application Framework - http://www.interjinn.com |
:------------------------------------------------------------:
| An application and templating framework for PHP. Boasting  |
| a powerful, scalable system for accessing system services  |
| such as forms, properties, sessions, and caches. InterJinn |
| also provides an extremely flexible architecture for       |
| creating re-usable components quickly and easily.          |
`------------------------------------------------------------'

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux