I recently upgraded a RHEL 4 box from PHP 5.3.2 to 5.3.3 without changing any other parameters.
I had one script using fnmatch. AFter the upgrade it complained that fnmatch was not defined.
When running 'strings' on the php bin file 'fnmatch' is in the 5.3.2 but not the new 5.3.3 version.
In the config process I can see where fnmatch was checked for but not the result.

Does anyone know why a system would drop the function.
More importantly is there an efficient way to find which functions are included in each new build...so I won't be surprised next time.
Thanks

    I see no indication on the manual page that it was removed. The change log for 5.3.3 even says "Fixed a possible stack exhaustion inside fnmatch()." The only slightly suspicious thing is the warning about it not being available for now on non-Posix systems, if that could somehow apply? Maybe a corrupted file in the new install? Maybe gremlins? 😉

      Any chance you can attach your config.log logfile from when you compiled PHP 5.3.3?

        Write a Reply...