Cara menggunakan sambungan PHP dan Exif untuk mengekstrak maklumat jarak fokus daripada foto
Pengenalan:
Dengan populariti fotografi digital, bilangan foto yang diambil orang juga semakin meningkat. Bagi peminat fotografi, adalah sangat penting untuk memahami maklumat metadata foto. Artikel ini akan memperkenalkan cara menggunakan sambungan PHP dan Exif untuk mengekstrak maklumat jarak fokus foto untuk membantu pembaca memahami foto mereka dengan lebih baik.
1. Apakah itu data Exif?
Format Fail Imej Boleh Tukar (Format Fail Imej Boleh Tukar), dirujuk sebagai Exif, ialah format fail untuk merakam maklumat foto digital. Ia menggunakan beberapa unit storan untuk merakam parameter penangkapan dan maklumat persekitaran penangkapan foto, seperti panjang fokus, ISO, kelajuan pengatup, dsb. Sambungan Exif PHP menyediakan satu set fungsi untuk memproses dan mengekstrak data Exif dengan mudah.
2. Pasang dan konfigurasikan sambungan Exif
Sebelum menggunakan sambungan Exif, kami perlu mengesahkan sama ada PHP telah memasang sambungan itu. Anda boleh menyemaknya dengan arahan berikut:
php -m | grep exif
Jika anda dapat melihat 'exif', sambungan Exif telah dipasang. Jika ia tidak dipasang, anda boleh memasangnya dengan mengikuti langkah berikut:
Jalankan arahan berikut dalam terminal untuk memasang sambungan Exif:
sudo apt-get install php-exif
Edit fail php.ini:
rreeeCari baris berikut dan nyahkomennya:
sudo nano /etc/php/7.4/cli/php.ini
Mulakan semula PHP:
;extension=exif
3. Ekstrak maklumat jarak fokus foto
Seterusnya, kami akan mengekstrak maklumat panjang fokus foto melalui langkah berikut:
Dalam skrip, mula-mula baca data Exif foto melalui fungsi exif_read_data() dan simpannya dalam tatasusunan:
sudo service php7.4-fpm restart
Kemudian, tentukan sama ada maklumat jarak fokus wujud dan cetaknya:
rreee4. Jalankan dan uji
Simpan skrip dan jalankan arahan berikut dalam terminal:
<?php $filename = 'example.jpg'; // 照片文件名 $exif_data = exif_read_data($filename, 0, true); ?>
Jika maklumat fokus terdapat dalam foto, anda akan melihat output yang serupa dengan yang berikut:
<?php if (isset($exif_data['EXIF']['FocalLength'])) { $focal_length = $exif_data['EXIF']['FocalLength']; echo "照片的焦距为:{$focal_length}mm"; } else { echo "未能获取照片的焦距信息。"; } ?>
Jika tidak, jika maklumat fokus tidak terdapat dalam foto, anda akan melihat output berikut:
php exif_example.php
5. Ringkasan
Dengan menggunakan sambungan Exif PHP, kami boleh mengekstrak maklumat jarak fokus foto dengan mudah. Walau bagaimanapun, perlu diingatkan bahawa tidak semua foto mengandungi maklumat jarak fokus. Oleh itu, apabila memproses foto, kita harus bersedia untuk ini dan mengendalikan pengecualian. Saya harap artikel ini membantu anda memahami cara menggunakan sambungan PHP dan Exif untuk mengekstrak maklumat fokus daripada foto. Selamat menembak!
Atas ialah kandungan terperinci Cara mengekstrak maklumat fokus foto menggunakan sambungan PHP dan Exif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!