pg_select
  (PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_select — 
   Выбирает записи из базы данных
  
  
 
  Описание
  
  
  
   При установке параметра flags
   функция применит к каждому условию в массиве conditions
   функцию pg_convert() с этими флагами.
  
  
   При установке для параметра mode
   режима PGSQL_NUM функция вернёт значение в форме индексного массива,
   в режиме по умолчанию PGSQL_ASSOC возвращается ассоциативный массив,
   а в режиме PGSQL_BOTH функция возвращает значения полей и с целочисленными,
   и со строковыми ключами.
  
  
   По умолчанию функция pg_insert() передаёт необработанные значения.
   Значения потребуется заэкранировать или указать опцию PGSQL_DML_ESCAPE.
   Опция PGSQL_DML_ESCAPE берёт в кавычки и экранирует
   параметры и идентификаторы. Поэтому названия таблиц и столбцов становятся
   чувствительными к регистру.
  
  
   Обратите внимание, что ни экранирование, ни подготовленный запрос не защитят запрос LIKE,
   JSON, массив, регулярные выражения и т. д. Эти параметры потребуется обработать
   в соответствии с их контекстом — заэкранировать или проверить значения.
  
  
 
  Список параметров
  
   
    
     - connection
- 
      Экземпляр
класса PgSql\Connection. 
- table_name
- 
      
       Название таблицы, из которой требуется выбрать данные.
       
- conditions
- 
      
       Массив (array), ключи которого соответствуют названиям полей таблицы
       table_name, а значения — условиям извлечения строк.
       Начиная с PHP 8.4.0 при передаче пустого массива функция не применяет условия.
       Раньше при передаче пустого массиваconditionsфункция завершалась ошибкой.
 
- flags
- 
      
       Параметр принимает произвольное сочетание следующих констант: PGSQL_CONV_FORCE_NULL,PGSQL_DML_NO_CONV,PGSQL_DML_ESCAPE,PGSQL_DML_EXEC,PGSQL_DML_ASYNC,PGSQL_DML_STRING.
       Функция вернёт строку запроса, если в списке флаговflagsсодержится
       флагPGSQL_DML_STRING. При установке флагаPGSQL_DML_NO_CONVилиPGSQL_DML_ESCAPEфункция pg_convert() внутренне не вызывается.
 
- mode
- 
      
       Константа PGSQL_ASSOC,PGSQL_NUMилиPGSQL_BOTH.
       В режимеPGSQL_ASSOCфункция возвращает
       ассоциативный массив,
       в режимеPGSQL_NUMвозвращается индексный массив,
       а в режимеPGSQL_BOTHфункция вернёт значения
       и с ассоциативным, и с числовым ключом.
 
 
 
  Возвращаемые значения
  
   Функция возвращает значение с типом string, если аргумент flags
   содержит флаг PGSQL_DML_STRING,
   в остальных случаях функция возвращает значение с типом array, если выполнилась успешно, или false, если возникла ошибка.
  
  
 
 
  Примеры
  
   
    Пример #1 Пример выборки записей функцией pg_select()
    
<?php
$db = pg_connect('dbname=foo');
// Отчасти это безопасно, поскольку значения экранируются.
// Однако СУБД PostgreSQL поддерживает типы JSON и массив. Для таких значений это небезопасно
// ни с экранированием, ни в подготовленном запросе
$rec = pg_select($db, 'post_log', $_POST);
if ($rec) {
    echo "Функция выбрала следующие записи\n";
    var_dump($rec);
} else {
    echo "Пользователь, должно быть, отправил неверные данные\n";
}
?>
     
    
  
  
 
  Смотрите также
  
   
    - pg_convert() - Преобразовывает значения ассоциативного массива в вид, который соответствует SQL-запросам