Rumah  >  Artikel  >  pangkalan data  >  Mengapa Penyata Disediakan PDO Saya mengambil() Mengembalikan Keputusan Berganda?

Mengapa Penyata Disediakan PDO Saya mengambil() Mengembalikan Keputusan Berganda?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-04 03:15:01215semak imbas

Why is My PDO Prepared Statement fetch() Returning Double Results?

Penyata Disediakan PDO fetch() Mengembalikan Keputusan Berganda

Anda bukan satu-satunya pembangun yang mengalami hasil yang tidak dijangka apabila menggunakan pernyataan yang disediakan oleh PDO dengan kaedah fetch(). Untuk menyelesaikan isu ini, anda perlu memahami cara fetch() berkelakuan dengan gaya pengambilan yang berbeza.

Secara lalai, fetch() mengembalikan tatasusunan bersekutu (diindeks mengikut nama lajur) dan tatasusunan angka (diindeks mengikut lajur nombor). Dalam kes anda, ini bermakna setiap lajur daripada setiap baris dalam jadual digemakan dua kali.

Untuk mengelakkan perkara ini, anda harus menentukan gaya pengambilan tertentu apabila memanggil fetch(). Anda boleh melakukan ini dengan menghantar salah satu pemalar PDO::FETCH_* sebagai argumen kedua kepada kaedah fetch().

Associative Array Only:

<code class="php">while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_ASSOC)) {
    // Your code here
}</code>

Array Numerik Sahaja:

<code class="php">while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_NUM)) {
    // Your code here
}</code>

Dengan menyatakan gaya pengambilan, anda boleh mengawal cara data dikembalikan daripada fetch() dan menghalang pertindihan yang tidak diingini.

Atas ialah kandungan terperinci Mengapa Penyata Disediakan PDO Saya mengambil() Mengembalikan Keputusan Berganda?. 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