RE: [SMARTY-DEV] improper check for existance of a file when incl uding PHP files

From: Date: Wed, 11 Dec 2002 20:10:35 +0000
Subject: RE: [SMARTY-DEV] improper check for existance of a file when incl uding PHP files
Groups: php.smarty.dev 
Request: Send a blank email to php-smarty-dev+get-409@lists.php.net to get a copy of this message
The documentation on clearstatcache() seems to address this. It is the documentation for this function (see link to php docs below) that leads me to make my previous assertion: http://www.php.net/manual/en/function.clearstatcache.php > -----Original Message----- > From: Monte Ohrt [mailto:monte@ispi.net] > Sent: Wednesday, December 11, 2002 2:11 PM > To: Lee Coltrane > Cc: Yuri Weseman; smarty-dev@lists.php.net > Subject: RE: [SMARTY-DEV] improper check for existance of a file when > incl uding PHP files > > > Are you sure? That would cause some real headaches, especially if a > files state changes between stats. I don't think PHP attempts any > caching. > > On Wed, 2002-12-11 at 12:09, Lee Coltrane wrote: > > I think that php caches file stats, so, I believe that > doing a file_exists > > followed immediately by an is_file is not actually as > time-consuming as it > > seems like it would be. > > > > ...I could be wrong, however. > > > > Anyway, it's a personal preference, but I feel like the '@' > operator is kind > > of a kludge regardless of how/when it is used. Of course, > given the chance, > > I would have made is_file return false when the file > doesn't exist, rather > > than triggering a warning, but we have no control over that > one. :-) > > > > IMHO, of course. > > -Lee > > > > > -----Original Message----- > > > From: Monte Ohrt [mailto:monte@ispi.net] > > > Sent: Wednesday, December 11, 2002 12:35 PM > > > To: Yuri Weseman > > > Cc: smarty-dev@lists.php.net > > > Subject: Re: [SMARTY-DEV] improper check for existance of > a file when > > > including PHP files > > > > > > > > > This method takes two file stats to perform the same > operation instead > > > of one. That is why one was used with an "@" to suppress it. > > > > > > I believe there is a way to tell if an error was suppressed > > > with an "@" > > > or not, you should consider that in your error handler. > > > > > > Monte > > > > > > On Wed, 2002-12-11 at 04:19, Yuri Weseman wrote: > > > > Hi everyone, > > > > > > > > Recently we installed a custom error handler for PHP, that > > > shows a nifty > > > > error screen when critical errors occur in PHP scripts. > > > Also, the script > > > > sends mails when not so critical errors have occurred. Now > > > I've noticed that > > > > Smarty generates an error in line 866 of Smarty.class.php > > > (version 2.3.0). > > > > In get_php_resource a check is done to see if the resource > > > exists by using > > > > is_file. To suppress any errors an @ sign is placed in > > > front of it. But > > > > still this does trigger our error handler and thus > generates mails. > > > > > > > > A more clean approach would be to use file_exists first. > > > > > > > > Line 866 is now: > > > > if (is_file($resource_name)) { > > > > > > > > I suggest it will be: > > > > if (file_exists($resource_name) && is_file($resource_name)) { > > > > > > > > Included is a diff file so that Smarty can be patched. > > > > > > > > Greetings, > > > > > > > > Yuri Weseman > > > > > > > > > > > > ______________________________________________________________________ > > > > > > > > -- > > > > Smarty Development Mailing List (http://smarty.php.net/) > > > > To unsubscribe, visit: > > > > http://www.php.net/unsub.php > > > -- > > > Monte Ohrt <monte@ispi.net> > > > > > > > > > -- > > > Smarty Development Mailing List (http://smarty.php.net/) > > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > -- > Monte Ohrt <monte@ispi.net> >

« previous php.smarty.dev (#409) next »