Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi undefined pg_query()

Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi undefined pg_query()

王林
王林asal
2023-06-22 08:12:11884semak imbas

PHP ialah bahasa pengaturcaraan yang sangat popular dengan pelbagai senario aplikasi. Apabila melakukan pembangunan web, kadangkala kita perlu menggunakan PostgreSQL sebagai pangkalan data, dan mesej ralat "PHP Fatal error: Call to undefined function pg_query()" muncul Ini kerana PHP tidak memuatkan pustaka fungsi yang diperlukan oleh PostgreSQL, mengakibatkan yang sepadan Fungsi tidak boleh dilaksanakan secara normal. Dalam artikel ini, kami akan membincangkan beberapa punca biasa ralat ini dan cara membetulkannya.

  1. PHP tidak memasang sambungan yang diperlukan

Cara paling mudah untuk menyelesaikan masalah ini ialah mengesahkan sama ada PHP anda telah memasang pemacu PostgreSQL. Jika tidak, anda perlukan untuk menyusun semula PHP, nyatakan pemacu PostgreSQL dan pasang semula. Apabila menyusun PHP, anda boleh menambah pilihan konfigurasi berikut:

--with-pgsql=/path/to/pgsql

di mana /path/to/pgsql ialah laluan ke direktori pemasangan PostgreSQL.

  1. Perpustakaan yang diperlukan oleh PostgreSQL tidak dimuatkan

Jika anda telah mengesahkan bahawa PHP telah memasang pemacu PostgreSQL, tetapi "PHP Fatal error: Call to undefined" masih muncul function pg_query()", maka kemungkinan besar fail perpustakaan yang diperlukan tidak dimuatkan. Anda boleh mengikuti langkah berikut untuk menyelesaikan masalah:

(1) Buka fail php.ini, nyahkomen dua baris berikut dan pastikan laluannya betul:

extension_dir = "ext"
extension=php_pgsql.dll

(2 ) Jika sistem anda Jika anda menggunakan sistem seperti UNIX seperti Linux atau Unix, anda perlu mengubah suai yang berikut:

; extension=php_pgsql.dll
extension=pgsql.so

(3) Mulakan semula pelayan Apache.

  1. Fungsi PostgreSQL yang ditamatkan dipanggil

Kadang-kadang mesej ralat di atas muncul kerana PHP telah menghentikan beberapa fungsi PostgreSQL, dan Program aplikasi kami masih menggunakannya. Jika anda pasti bahawa anda telah memasang pemacu PostgreSQL dan melengkapkan tetapan yang berkaitan, tetapi masih tidak dapat menyelesaikan ralat di atas, anda perlu menyemak sama ada kod anda memanggil fungsi PostgreSQL yang tidak digunakan lagi.

Sebagai contoh, jika fungsi pg_exec() dipanggil dalam kod anda, ia akan menunjukkan mesej ralat di atas. Ini kerana fungsi pg_exec() telah ditamatkan dan fungsi pg_query() harus digunakan sebaliknya.

Ringkasnya, untuk menyelesaikan mesej ralat di atas, "PHP Fatal error: Call to undefined function pg_query()", anda perlu terlebih dahulu mengesahkan sama ada PHP anda telah memasang pemacu PostgreSQL dan mengkonfigurasi yang sepadan dengan betul Parameter dan fail perpustakaan. Juga, ambil perhatian dan elakkan menggunakan fungsi PostgreSQL yang tidak digunakan lagi. Jika anda masih tidak dapat menyelesaikan masalah ini, kami mengesyorkan anda menyemak dokumentasi rasmi PHP dan PostgreSQL, atau meminta bantuan dalam forum yang berkaitan.

Atas ialah kandungan terperinci Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi undefined pg_query(). 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