Расширение mysqli для PHP полезно для подключения к серверу базы данных MySQL. Как вы описали, вы привязали к вашему приложению базу данных PostgreSQL, поэтому это расширение совершенно бесполезно. Чтобы подключиться к PostgreSQL, вы можете использовать менеджер зависимостей компоновщика (поддерживаемый на Bluemix) с вашим PHP-приложением и установить ваш composer.json с зависимостью. Вы можете добавить другие зависимости к вашему composer.json.
"require": {
"ext-pgsql": "*"
}
Тогда вы могли бы подключиться к службе PostgreSQL с использованием кода, как следующий один, чтобы получить обслуживание учетных данных от VCAP_SERVICES переменных, доступных из CloudFoundry
if (getenv("VCAP_SERVICES")===false) {
$db = 'XXXX';
define("APP_DB_SCHEMA", $db);
define("APP_DB_HOST", 'xxxx');
define("APP_DB_PORT", "xxxx");
define("APP_DB_USERNAME", 'xxxx');
define("APP_DB_PASSWORD", "xxxx");
} else {
// getting VCAP configuration
$services = getenv("VCAP_SERVICES");
$services_json = json_decode($services, true);
$pgsql_config = $services_json["postgresql-9.1"][0]["credentials"];
define("APP_DB_SCHEMA", $pgsql_config["name"]);
define("APP_DB_HOST", $pgsql_config["host"]);
define("APP_DB_PORT", $pgsql_config["port"]);
define("APP_DB_USERNAME", $pgsql_config["user"]);
define("APP_DB_PASSWORD", $pgsql_config["password"]);
}
, а затем установить соединение с базой данных через:
$dbConnectionString = "host=" . APP_DB_HOST . " port=" . APP_DB_PORT . " dbname=" . APP_DB_SCHEMA . " user=" . APP_DB_USERNAME . " password=" . APP_DB_PASSWORD;
$dbConnection = pg_connect($dbConnectionString);
Где находится сервер psotgresql? Какой терминал? Не могли бы вы добавить несколько подробностей? –