本文整理汇总了PHP中pg_field_type函数的典型用法代码示例。如果您正苦于以下问题:PHP pg_field_type函数的具体用法?PHP pg_field_type怎么用?PHP pg_field_type使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了pg_field_type函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: castResult
public static function castResult($result, array $a, Stub $stub, $isNested)
{
$a['num rows'] = pg_num_rows($result);
$a['status'] = pg_result_status($result);
if (isset(self::$resultStatus[$a['status']])) {
$a['status'] = new ConstStub(self::$resultStatus[$a['status']], $a['status']);
}
$a['command-completion tag'] = pg_result_status($result, PGSQL_STATUS_STRING);
if (-1 === $a['num rows']) {
foreach (self::$diagCodes as $k => $v) {
$a['error'][$k] = pg_result_error_field($result, $v);
}
}
$a['affected rows'] = pg_affected_rows($result);
$a['last OID'] = pg_last_oid($result);
$fields = pg_num_fields($result);
for ($i = 0; $i < $fields; ++$i) {
$field = array('name' => pg_field_name($result, $i), 'table' => sprintf('%s (OID: %s)', pg_field_table($result, $i), pg_field_table($result, $i, true)), 'type' => sprintf('%s (OID: %s)', pg_field_type($result, $i), pg_field_type_oid($result, $i)), 'nullable' => (bool) pg_field_is_null($result, $i), 'storage' => pg_field_size($result, $i) . ' bytes', 'display' => pg_field_prtlen($result, $i) . ' chars');
if (' (OID: )' === $field['table']) {
$field['table'] = null;
}
if ('-1 bytes' === $field['storage']) {
$field['storage'] = 'variable size';
} elseif ('1 bytes' === $field['storage']) {
$field['storage'] = '1 byte';
}
if ('1 chars' === $field['display']) {
$field['display'] = '1 char';
}
$a['fields'][] = new EnumStub($field);
}
return $a;
}
示例2: PG_QueryStart
function PG_QueryStart($SQL, &$aFields, &$link, &$Errors)
{
$gMyHOST = "127.0.0.1";
$gMyDB = "osm";
$gMyUSER = "osm";
$gMyPASS = "insertPassword";
$Errors = "";
$result = false;
$conn_string = "host={$gMyHOST} port=5432 dbname={$gMyDB} user={$gMyUSER} password={$gMyPASS}";
$link = pg_connect($conn_string);
if ($link === false) {
$Errors .= "Impossibile connettersi a '{$gMyHOST}' come '{$gMyUSER}'";
} else {
$result = pg_query($SQL);
if ($result === false) {
$Errors .= ($Errors[0] ? "" : "<br>") . "Errore durante la query '{$SQL}': " . pg_last_error();
} else {
$nFields = pg_num_fields($result);
for ($ind = 0; $ind < $nFields; $ind++) {
$aFields[$ind] = array(pg_field_name($result, $ind), pg_field_type($result, $ind));
}
}
}
return $result;
}
示例3: query_start
function query_start($query)
{
// For reg expressions
$query = trim($query);
// Query was an insert, delete, update, replace
if (preg_match("/^(insert|delete|update|replace)\\s+/i", $query)) {
return false;
}
// Flush cached values..
$this->flush();
// Log how the function was called
$this->func_call = "\$db->query_start(\"{$query}\")";
// Keep track of the last query for debug..
$this->last_query = $query;
// Perform the query via std pg_query function..
if (!($this->result = @pg_query($this->dbh, $query))) {
$this->print_error();
return false;
}
$this->num_queries++;
// =======================================================
// Take note of column info
$i = 0;
while ($i < @pg_num_fields($this->result)) {
$this->col_info[$i]->name = pg_field_name($this->result, $i);
$this->col_info[$i]->type = pg_field_type($this->result, $i);
$this->col_info[$i]->size = pg_field_size($this->result, $i);
$i++;
}
$this->last_result = array();
$this->num_rows = 0;
// If debug ALL queries
$this->trace || $this->debug_all ? $this->debug() : null;
return true;
}
示例4: postgis_query
function postgis_query($string, $pgc = NULL)
{
$pgct = $pgc;
if ($pgc == NULL) {
$pgct = postgis_connect();
}
@($result = pg_query($pgct, $string));
if ($pgc == NULL) {
pg_close($pgct);
}
$retval = array();
if (!$result) {
return $retval;
}
$arow = array();
for ($i = 0; $i < pg_num_fields($result); $i++) {
$arow[pg_field_name($result, $i)] = pg_field_type($result, $i);
}
$retval[0] = $arow;
$ctr = 1;
while ($row = pg_fetch_row($result)) {
$arow = array();
for ($i = 0; $i < count($row); $i++) {
$arow[pg_field_name($result, $i)] = $row[$i];
}
$retval[$ctr] = $arow;
$ctr++;
}
pg_free_result($result);
return $retval;
}
示例5: getTypes
public function getTypes()
{
$types = [];
$count = pg_num_fields($this->result);
for ($i = 0; $i < $count; $i++) {
$nativeType = pg_field_type($this->result, $i);
$types[pg_field_name($this->result, $i)] = [0 => isset(self::$types[$nativeType]) ? self::$types[$nativeType] : self::TYPE_AS_IS, 1 => $nativeType];
}
return $types;
}
示例6: __construct
/**
* Constructor
*
* @param resource handle
*/
public function __construct($result, TimeZone $tz = NULL)
{
$fields = array();
if (is_resource($result)) {
for ($i = 0, $num = pg_num_fields($result); $i < $num; $i++) {
$fields[pg_field_name($result, $i)] = pg_field_type($result, $i);
}
}
parent::__construct($result, $fields, $tz);
}
示例7: _performGetBlobFieldNames
function _performGetBlobFieldNames($result)
{
$blobFields = array();
for ($i = pg_num_fields($result) - 1; $i >= 0; $i--) {
$type = pg_field_type($result, $i);
if (strpos($type, "BLOB") !== false) {
$blobFields[] = pg_field_name($result, $i);
}
}
return $blobFields;
}
示例8: GetFields
function GetFields()
{
$_fields = array();
$_result = pg_query($this->_Link, $this->SelectCommand);
$_num_fields = pg_num_fields($_result);
for ($i = 0; $i < $_num_fields; $i++) {
$_field = array("Name" => pg_field_name($_result, $i), "Type" => pg_field_type($_result, $i), "Not_Null" => 0);
array_push($_fields, $_field);
}
return $_fields;
}
示例9: db_getfieldslist
/**
* @param String strSQL
* @return Array
*/
public function db_getfieldslist($strSQL)
{
$res = array();
$qResult = $this->connectionObj->query($strSQL);
$fieldsNumber = $qResult->numFields();
for ($i = 0; $i < $fieldsNumber; $i++) {
$stype = pg_field_type($qResult->getQueryHandle(), $i);
$ntype = $this->getFeldTypeNumber($stype);
$res[$i] = array("fieldname" => $qResult->fieldName($i), "type" => $ntype, "is_nullable" => 0);
}
return $res;
}
示例10: getColumnMeta
public function getColumnMeta($column)
{
if ($column >= $this->columnCount()) {
return false;
}
$result = array();
$result['native_type'] = pg_field_type($this->_result, $column);
$result['table'] = pg_field_table($this->_result, $column);
$result['name'] = pg_field_name($this->_result, $column);
$result['len'] = pg_field_prtlen($this->_result, $column);
$result['pdo_type'] = PDO::PARAM_STR;
return $result;
}
示例11: db_getfieldslist
function db_getfieldslist($strSQL)
{
global $conn;
$res=array();
$rs=db_query($strSQL,$conn);
for($i=0;$i<db_numfields($rs);$i++)
{
$stype=pg_field_type($rs,$i);
$ntype=db_fieldtypenum($stype);
$res[$i]=array("fieldname"=>db_fieldname($rs,$i),"type"=>$ntype,"is_nullable"=>0);
}
return $res;
}
示例12: getFieldData
/**
* Generates an array of objects representing field meta-data.
*
* @return array
*/
public function getFieldData() : array
{
$retval = [];
for ($i = 0, $c = $this->getFieldCount(); $i < $c; $i++) {
$retval[$i] = new \stdClass();
$retval[$i]->name = pg_field_name($this->resultID, $i);
$retval[$i]->type = pg_field_type($this->resultID, $i);
$retval[$i]->max_length = pg_field_size($this->resultID, $i);
// $retval[$i]->primary_key = (int)($fieldData[$i]->flags & 2);
// $retval[$i]->default = $fieldData[$i]->def;
}
return $retval;
}
示例13: __construct
public function __construct($resource)
{
if (!is_resource($resource) || is_resource($resource) && get_resource_type($resource) !== self::EXPECTED_RESOURCE_TYPE) {
throw new DatabaseException('Invalid resource type passed, expected "' . $this->expectedResource . '" and got "' . get_resource_type($resource) . '"');
}
$this->resource = $resource;
$this->count = pg_num_rows($this->resource);
// Build an array of column types
$this->fieldCount = pg_num_fields($this->resource);
for ($i = 0; $i < $this->fieldCount; ++$i) {
$this->types[$i] = [pg_field_name($this->resource, $i), pg_field_type($this->resource, $i)];
}
}
示例14: __construct
public function __construct($result)
{
$this->result = $result;
$this->row = 0;
$this->max = pg_num_rows($result);
if ($this->max > 0) {
$this->types = [];
$num_fields = pg_num_fields($result);
for ($i = 0; $i < $num_fields; $i++) {
$this->types[pg_field_name($result, $i)] = pg_field_type($result, $i);
}
}
}
示例15: field_structures
/**
* Structure of our fields (type, length and null)
*
* @param resource $resource
* @return array
*/
public function field_structures($resource)
{
$result = [];
if ($resource) {
for ($i = 0; $i < pg_num_fields($resource); $i++) {
$name = pg_field_name($resource, $i);
$result[$name]['type'] = pg_field_type($resource, $i);
$result[$name]['null'] = pg_field_is_null($resource, $i);
$result[$name]['length'] = pg_field_size($resource, $i);
}
}
return $result;
}