Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Operasi membaca dan menulis fail binari dalam PHP

Operasi membaca dan menulis fail binari dalam PHP

PHPz
PHPzasal
2023-06-22 09:09:032696semak imbas

PHP ialah bahasa yang digunakan secara meluas dalam pembangunan web Ia menyediakan banyak fungsi dan kaedah untuk memproses fail. Dalam PHP, kita boleh menggunakan mod binari untuk membaca dan menulis fail Kaedah ini boleh meningkatkan kecekapan operasi fail, terutamanya apabila memproses fail binari. Dalam artikel ini, kami akan meneroka operasi membaca dan menulis fail binari dalam PHP dan cara menggunakan kaedah ini untuk memproses fail binari.

Apakah itu fail binari?

Fail binari merujuk kepada fail yang diwakili oleh binari tulen Kandungannya mungkin mengandungi set aksara yang dikodkan yang berbeza, atau fail tersebut mungkin mengandungi sejumlah besar data binari, seperti imej, audio, video dan fail lain. Sebaliknya, fail teks ialah fail yang menyimpan aksara dalam unit baris, dengan setiap baris berakhir dengan aksara baris baharu dan disimpan menggunakan pengekodan aksara tertentu.

Fail binari selalunya digunakan untuk menyimpan fail media dan fail program seperti imej, bunyi dan video Kandungan fail ini perlu disimpan dalam bentuk binari dan bukannya bentuk aksara.

Bagaimana untuk membaca dan menulis fail binari dalam PHP?

Dalam PHP, kita boleh menggunakan fungsi fopen() dan fread() untuk membuka dan membaca fail binari. Berikut ialah contoh kod mudah:

$file = fopen("file.bin", "rb");
$bytes = fread($file, filesize("file.bin"));
fclose($file);

Kod di atas digunakan untuk membuka fail bernama "file.bin" dalam mod binari, membaca semua data dalam fail dan menyimpannya ke dalam fail bernama $bytes dalam pembolehubah. Akhirnya, fail ditutup menggunakan fungsi fclose().

Dalam kod contoh di atas, kita harus ambil perhatian bahawa apabila menggunakan fungsi fopen() untuk membuka fail, parameter kedua "rb" bermaksud membuka fail dalam mod baca sahaja binari. Begitu juga, kita juga boleh menggunakan fungsi fwrite() untuk menulis data ke fail binari. Berikut ialah contoh kod:

$file = fopen("file.bin", "wb");
fwrite($file, $bytes);
fclose($file);

Kod di atas digunakan untuk membuka fail bernama "file.bin" dalam mod binari, menulis kandungan pembolehubah bernama $bytes ke dalam fail, dan akhirnya, gunakan fclose () fungsi menutup fail.

Perlu diingatkan bahawa apabila memproses fail binari, kita mesti menggunakan mod binari untuk membuka, membaca dan menulis fail, jika tidak masalah ketidakserasian akan berlaku.

Bagaimana untuk berurusan dengan fail binari?

Apabila kita perlu memproses fail binari, biasanya kita perlu memahami format, struktur dan kandungan fail. Sebelum memproses sesuatu fail, kita perlu mengkajinya menggunakan dokumen seperti spesifikasi format fail untuk mengetahui jenis, susunan, dan panjang maklumat yang terkandung dalam fail tersebut. Selepas itu, kita perlu memahami susunan bait dan bagaimana pelbagai jenis data disimpan, seperti integer, nombor titik terapung, aksara, dll.

Apabila memproses fail binari, biasanya kita perlu menggunakan beberapa fungsi penukaran binari, seperti fungsi pack() dan unpack(). Fungsi pack() digunakan untuk menukar data PHP kepada format binari, manakala fungsi unpack() digunakan untuk menukar format binari kepada data PHP. Berikut ialah contoh kod:

$int = 1234;
$bytes = pack("n", $int);

Kod di atas digunakan untuk menukar integer 1234 ke dalam format binari dan menyimpannya ke dalam pembolehubah bernama $bytes. Dalam contoh ini, kami menggunakan "n" untuk mewakili format perduaan pendek yang tidak ditandatangani.

Berikut ialah contoh terbalik:

$int = unpack("n", $bytes)[1];

Kod di atas digunakan untuk menukar data binari bernama $bytes kepada integer PHP dan menyimpannya dalam pembolehubah bernama $int. Dalam contoh ini, kami menggunakan "n" untuk menunjukkan bahawa data perduaan adalah dalam format pendek yang tidak ditandatangani.

Apabila memproses fail binari, tugas kami adalah untuk menukar jenis data yang berbeza untuk memudahkan membaca dan menulis data dalam fail. Anda boleh menggunakan fungsi pack() dan unpack() untuk menukar antara jenis data dan format binari.

Ringkasan

Dalam artikel ini, kami meneroka operasi membaca dan menulis fail perduaan dalam PHP, dan perkara yang anda perlu tahu semasa bekerja dengan fail binari. Kami belajar tentang konsep fail binari dan cara menggunakan mod binari untuk membaca dan menulis fail. Pada masa yang sama, kami juga mempelajari cara mengendalikan fail binari, iaitu cara menukar antara jenis data PHP dan format binari dengan menggunakan fungsi pack() dan unpack().

Atas ialah kandungan terperinci Operasi membaca dan menulis fail binari dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn