Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyimpan Fail .pdf sebagai BLOB dengan berkesan dalam MySQL Menggunakan PHP?

Bagaimana untuk Menyimpan Fail .pdf sebagai BLOB dengan berkesan dalam MySQL Menggunakan PHP?

DDD
DDDasal
2024-10-24 04:18:02272semak imbas

How to Effectively Store .pdf Files as BLOBs in MySQL Using PHP?

Penyimpanan Berkesan Fail .pdf dalam BLOB MySQL Menggunakan PHP

Menyimpan objek besar binari (BLOB) seperti fail .pdf dalam pangkalan data MySQL menggunakan PHP menimbulkan persoalan mengenai pendekatan optimum. Dalam artikel ini, kami akan menyelidiki penyelesaian yang mantap untuk cabaran biasa ini.

Penyelesaian:

Dengan mengandaikan anda mempunyai jadual pangkalan data dengan ID dan lajur DATA untuk menyimpan BLOB, pertimbangkan untuk menggunakan teknik berikut:

<code class="php">$result = mysql_query('INSERT INTO table (
data
) VALUES (
\'' . mysql_real_escape_string(file_get_contents('/path/to/the/file/to/store.pdf')) . '\'
);');</code>

Pertimbangan:

Menyimpan BLOB dalam pangkalan data menimbulkan potensi kelemahan seperti table bloat dan cabaran dalam mendapatkan semula yang cekap. Oleh itu, strategi yang disyorkan adalah untuk menempatkan semula fail ke lokasi sistem fail dan menyimpan laluannya dalam pangkalan data untuk tujuan mendapatkan semula.

Pemberhentian dan Alternatif Moden:

Sila ambil perhatian bahawa kod yang disediakan sudah lapuk dan tidak sesuai untuk PHP 7 dan versi yang lebih baru. Adalah dinasihatkan untuk menggunakan kaedah capaian pangkalan data moden seperti mysqli atau PDO dan bukannya fungsi mysql_* yang tidak digunakan.

mysqli Contoh:

Menggunakan mysqli dalam mod prosedur, anda boleh mencapai fungsi yang sama dengan kod berikut:

<code class="php">$result = mysqli_query($db, 'INSERT INTO table (
data
) VALUES (
\'' . mysqli_real_escape_string(file_get_contents('/path/to/the/file/to/store.pdf'), $db) . '\'
);');</code>

Pendekatan Pilihan:

Untuk prestasi dan keselamatan yang optimum, pertimbangkan untuk memanfaatkan pernyataan MySQLI atau PDO yang disediakan untuk memasukkan BLOB ke dalam pangkalan data MySQL anda. Ini memastikan kecekapan dan perlindungan terhadap serangan suntikan SQL.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Fail .pdf sebagai BLOB dengan berkesan dalam MySQL Menggunakan 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