Re: Does this seem wrong to anyone else?

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

 



On Wed, 2008-08-20 at 14:09 -0700, Stephen Johnson wrote:
> I am debugging someone else¹s code, and this is what they have :
> 
> 
> 1055    function mkdir_recursive($pathname, $mode)
> 1056    {
> 1057        is_dir(dirname($pathname)) ||
> mkdir_recursive(dirname($pathname), $mode);
> 1058        return is_dir($pathname) || @mkdir($pathname, $mode);
> 1059    }
> 
> The part that bothers me is that mkdir_recursive calls itself from within
> itself.  
> 
> I am not an expert on this particular type of thing, and maybe that is
> allowed, but it seems wrong to me, and this error is being generated:

That's the point of recursion... to recursively call oneself!

> Fatal error: Call to undefined function mkdir_recursive() in xxxxx.php on
> line 1057

Not sure why you're getting that error since it appears to be well
defined above... unless xxxxx.php is not the same file in which
mkdir_recursive() ha sbeen defined. I'll wager it's not... in which case
you need to ensure the file that contains the mkdir_recursive() function
declaration is included into xxxxx.php. BTW, FWIW, I wouldn't call the
above code good quality since it obfuscates its intent by using ||
hackishness. It's succinct but less obvious.

Cheers,
Rob.
-- 
http://www.interjinn.com
Application and Templating Framework for PHP


-- 
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