Req #45586 [Asn->Opn]: php_mbstring must be loaded before php_exif extension in php.ini
Edit report at https://bugs.php.net/bug.php?id=45586&edit=1
ID: 45586
Updated by: kalle@php.net
Reported by: bouke at haarsma dot eu
Summary: php_mbstring must be loaded before php_exif
extension in php.ini
-Status: Assigned
+Status: Open
Type: Feature/Change Request
Package: Dynamic loading
Operating System: Windows XP
PHP Version: 5.2.6
-Assigned To: pajoye
+Assigned To:
Block user comment: N
Private report: N
Previous Comments:
------------------------------------------------------------------------
[2010-12-03 17:43:54] jani@php.net
There is module dependancy system in PHP which should take care of this..perhaps it does not work
under windows..? I do not know how windows binaries are build. Pierre, can you check it out?
ext/exif does have dependancy set for mbstring.
------------------------------------------------------------------------
[2010-06-09 01:17:48] whistl0r+phpbug at googlemail dot com
This problem also affects PHP 5.3 (tested against the latest 5.3.2 release for
Windows).
If you cannot change the order (I agree missingno's argumentation), this should be
documented!
Google for the term "php_exif not found", you will find many reports like
http://eligeske.com/wordpress/php_exif-dll-the-specified-module-could-not-be-
found/
------------------------------------------------------------------------
[2008-07-23 09:54:31] missingno at ifrance dot com
I guess the problem comes from the fact that the extension entries are sorted by alphabetical order
in the php.ini file.
Correcting the order of extensions would solve the problem but would require a lot of testing
because I think this problem also occurs with other extensions as well...
I don't think it is such a good idea because the way the list is currently written makes it
easy to find the extensions you want to activate. Also, each extension's page in the manual
clearly has some sort of a FAQ regarding installation/configuration.
The only problem I seen then is users that do not read the manual, but I digress...
Anyway, I think this is a WONTFIX for now. One possible solution would be for extensions to manage
dependancies at runtime and let the user know the steps to follow in order for the extension to
work.
But this would probably put to much of a burden on the developpers compared to the actual gain.
------------------------------------------------------------------------
[2008-07-21 17:30:45] jani@php.net
Better summary. There's no crash here.
------------------------------------------------------------------------
[2008-07-21 17:17:19] bouke at haarsma dot eu
Description:
------------
Please see: http://bugs.php.net/bug.php?id=27248
Also see: http://bugs.php.net/bug.php?id=32552
Using the latest php.ini files, the problem still exists. The default order for loading the
extensions is wrong and error-prone. The 'solution' as stated in the comments should also
be reflected in the php.ini-file.
Please note that this has been "solved" in 2005, but the bug is introduced again.
Reproduce code:
---------------
Enter this into php.ini:
extension=php_exif.dll
extension=php_mbstring.dll
Solution:
extension=php_mbstring.dll
extension=php_exif.dll
(Swaped order)
Expected result:
----------------
-no error message-
Actual result:
--------------
-error message: "php_mbstring.dll" not found
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=45586&edit=1
Thread (7 messages)