Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP:exif_read_data() not defined

Tags:

php

exif

I'm now learning how to extract exif from images.I wrote the simple code like this:

<?php
//Get the exif data
$exif_data = exif_read_data('sample.jpg');
print_r($exif_data);
?>

But, there is a fatal error about undefined exif_read_data() when running the code. I'm a windows user, and I have modified the php.ini like this :

extension=php_mbstring.dll
extension=php_exif.dll

Thanks for your help.

like image 704
HjySix Avatar asked Dec 20 '11 09:12

HjySix


2 Answers

  • Do you have these DLLs on your system under Php/ext folder?

  • Have you restarted Apache after editing the php.ini?

  • The php.ini you edited is the one used by system? You can verify this reading <?php phpinfo() ?> output.

  • Is there in <?php phpinfo() ?> output some information about the EXIF extension?

like image 176
lorenzo-s Avatar answered Oct 17 '22 22:10

lorenzo-s


If you have exif.so or php_exif.dll enabled under php.ini dynamic extensions, but you still have problem running any function, it is possible that you may need to change order of extensions in php.ini.

In many PHP installation packages the extensions are listed alphabetically. However, exif is dependent on mbstrings to be loaded first. Yet, with alphabetic ordering the exif is listed before mbstrings and it causes the error. Load mbstrings extensions before exif.

Thus, do put exif as the very last extension to load and you should be fine.

http://php.net/manual/en/book.exif.php

like image 39
Hoàng Vũ Tgtt Avatar answered Oct 17 '22 20:10

Hoàng Vũ Tgtt