* Прежде всего, не отвечайте «php.ini >> uncomment extension = pgsql.so и перезапустите httpd». сделал это миллионы раз, не решило мою проблему.
* Пробовал сотни методов, описанных на разных сайтах, включая stackoverflow, но, к сожалению, у меня не сработало (я склоняюсь к Linux >> noob)
ИНФОРМАЦИЯ: httpd 2.2.15, php 5.6.26 (remi-php56), CentOS 6.8, postgresql 8.2.9
Ошибка 1:
Неустранимая ошибка: вызов неопределенной функции mb_convert_encoding () в /var/www/html/bancarella_dev/config.php в строке 6
Ошибка 1 была решена:
yum install php-mbstring
service httpd restart
Ошибка 2:
Неустранимая ошибка: вызов неопределенной функции pg_connect () в /var/www/html/bancarella_dev/dbconnect.php в строке 69
Чтобы решить ошибку 2, я сделал:
yum install php-pgsql
service httpd restart
Но это не решило ошибку 2.
Чтобы увидеть, какие расширения загружаются, я создал тестовый файл test.php
Код:
$isPgsql = extension_loaded('pgsql') ? 'yes':'no';
echo "pgsql loaded: {$isPgsql}" ;
print_r(get_loaded_extensions());
Вывод test.php:
pgsql loaded: no
Array
(
[0] => Core
[1] => date
[2] => ereg
[3] => libxml
[4] => openssl
[5] => pcre
[6] => zlib
[7] => filter
[8] => hash
[9] => Reflection
[10] => SPL
[11] => session
[12] => standard
[13] => apache2handler
[14] => bz2
[15] => calendar
[16] => ctype
[17] => curl
[18] => mbstring
[19] => fileinfo
[20] => ftp
[21] => gettext
[22] => iconv
[23] => exif
[24] => PDO
[25] => Phar
[26] => sockets
[27] => sqlite3
[28] => tokenizer
[29] => pdo_pgsql
[30] => pdo_sqlite
[31] => json
[32] => zip
[33] => mhash
)
Итак, mbstring загружена (поэтому ошибка 1 была решена).
Из массива видно, что pdo_pgsql также загружен, но pgsql - нет.
Зачем? все еще получаю:
Вызов неопределенной функции pg_connect ()
Пожалуйста помоги.
Я обновил PostgreSQL (как предложил @RemiCollet), и все работает правильно.
yum install postgresql96*
service postgresql-9.6 initdb
chkconfig postgresql-9.6 on
service postgresql-9.6 start