Web lists-archives.com

RE: [PHP] Re: Glob issue





> -----Original Message-----
> From: The Doctor [mailto:doctor@xxxxxxxxxxxxxxxxx]
> Sent: Thursday, July 16, 2015 9:35 PM
> To: Anatol Belski <anatol.php@xxxxxxxxxx>
> Cc: 'Christoph Becker' <cmbecker69@xxxxxx>; php-general@xxxxxxxxxxxxx
> Subject: Re: [PHP] Re: Glob issue
> 
> On Thu, Jul 16, 2015 at 09:27:52PM +0200, Anatol Belski wrote:
> > Hi,
> >
> > > -----Original Message-----
> > > From: The Doctor [mailto:doctor@xxxxxxxxxxxxxxxxx]
> > > Sent: Thursday, July 16, 2015 6:48 PM
> > > To: Christoph Becker <cmbecker69@xxxxxx>
> > > Cc: php-general@xxxxxxxxxxxxx
> > > Subject: Re: [PHP] Re: Glob issue
> > >
> > > On Thu, Jul 16, 2015 at 01:35:15AM +0200, Christoph Becker wrote:
> > > > The Doctor wrote:
> > > >
> > > > > REcently in our php error log we have been seeing
> > > > >
> > > > > [15-Jul-2015 07:16:39 America/Edmonton] PHP Fatal error:  Call
> > > > > to undefined function glob() in /var/www/docs/foreachtest.phtml
> > > > > on line
> > > > > 2
> > > > >
> > > > >
> > > > > And  the foreachtest.phtml read
> > > > >
> > > > >
> > > > > <?php
> > > > > foreach (glob("*.html") as $filename) {
> > > > >     echo "$filename size " . filesize($filename) . "\n"; } ?>
> > > > >
> > > > >
> > > > > What is happening?
> > > > >
> > > > > Using php 5.6.11 on Apache 2.2 latest.
> > > >
> > > > Are you aware of
> > > >
> >
<http://php.net/manual/en/function.glob.php#refsect1-function.glob-notes>:
> > > >
> > > > | Note: This function isn't available on some systems (e.g. old Sun
OS).
> > > >
> > >
> > > I am using BSD/OS 4.3  .  Usually I would add functionality in one
> > > of the
> > C files.
> > >
> > > I have a glob.c I could add.  Where do I place it?
> > >
> > Yeah, on windows we use this glob implementation
> > https://github.com/php/php-src/blob/master/win32/glob.c . It would be
> > great I you could provide a PR against master with yours which is BSD
> > specific. It is probably something that could go into
> > https://github.com/php/php-src/blob/master/configure.in (or you could
> > incapsulate it in acinclude.m4 as a function). There you could do a
> > program test compilation and conditionally include an appropriate
> > glob.c specifically for BSD.
> 
> For BSD there is the one in openssh might do the trick.
> 
> where to plug this though.
Nope, if we would include a missing implementation, it should not depend on
anything and should be a dedicated bundled file. It should be just a
standalone glob implementation, the configure should do test compilation to
figure out glob is not available in the C runtime, and if so - a platform
specific file should be compiled instead.

Thanks.

Anatol


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