Rumah  >  Artikel  >  pangkalan data  >  Mengapa Saya Tidak Boleh Menggunakan LOAD DATA LOCAL INFILE dalam PHP?

Mengapa Saya Tidak Boleh Menggunakan LOAD DATA LOCAL INFILE dalam PHP?

Susan Sarandon
Susan Sarandonasal
2024-11-04 02:31:02304semak imbas

Why Can't I Use LOAD DATA LOCAL INFILE in PHP?

MEMUAT DATA INFILE TEMPATAN Sekatan dalam PHP

Memuatkan data daripada fail tempatan menggunakan LOAD DATA LOCAL INFILE boleh menjadi ciri yang mudah untuk mengimport data . Walau bagaimanapun, dalam kes tertentu, pengguna mungkin menghadapi masalah apabila cuba melaksanakannya melalui PHP.

Sekatan PHP dengan LOAD DATA LOCAL INFILE

PHP mengehadkan penggunaan LOAD DATA LOCAL INFILE kerana kebimbangan keselamatan. Operasi membaca fail tempatan dianggap sebagai potensi kelemahan keselamatan, itulah sebabnya PHP melarang pelaksanaannya. Secara lalai, aplikasi PHP tidak mempunyai keistimewaan yang diperlukan untuk mengakses fail setempat.

Menyelesaikan Masalah

Untuk mengatasi isu ini, pengguna perlu mendayakan kebenaran membaca fail setempat untuk PHP. Ini boleh dicapai dengan menetapkan atribut PDO::MYSQL_ATTR_LOCAL_INFILE kepada benar apabila membuat seketika objek PDO.

Contoh Kod

Coretan kod berikut menunjukkan cara untuk menetapkan PDO ::MYSQL_ATTR_LOCAL_INFILE atribut:

<code class="php">$conn = new PDO("mysql:host=$server;dbname=$database;", "$user", "$password", array(
    PDO::MYSQL_ATTR_LOCAL_INFILE => true,
));</code>

Setelah atribut ini didayakan, operasi LOAD DATA LOCAL INFILE harus dilaksanakan dengan jayanya daripada aplikasi PHP.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menggunakan LOAD DATA LOCAL INFILE 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