PEAR DB_DataObject uses ini files with mysterious numbers in them like this:

[banners]
bannerid = 129
campaignid = 129
contenttype = 130
pluginversion = 129
storagetype = 130
filename = 130
imageurl = 130
htmltemplate = 162
htmlcache = 162
width = 129
height = 129
weight = 129
seq = 129
target = 130
url = 162
alt = 130
statustext = 130
bannertext = 162
description = 130
adserver = 130
block = 129
capping = 129
session_capping = 129
compiledlimitation = 162
acl_plugins = 34
append = 162
bannertype = 129
alt_filename = 130
alt_imageurl = 130
alt_contenttype = 130
comments = 34
updated = 142
acls_updated = 142
keyword = 130
transparent = 145
parameters = 34
an_banner_id = 1
as_banner_id = 1
status = 129
ad_direct_status = 129
ad_direct_rejection_reason_id = 129
ext_bannertype = 2
prepend = 162

These are automatically generated but what the hell are they?

They are defined as bit flags in DataObject.php:

/**
 * these are constants for the get_table array
 * user to determine what type of escaping is required around the object vars.
 */
define('DB_DATAOBJECT_INT',  1);  // does not require ''
define('DB_DATAOBJECT_STR',  2);  // requires ''

define('DB_DATAOBJECT_DATE', 4);  // is date #TODO
define('DB_DATAOBJECT_TIME', 8);  // is time #TODO
define('DB_DATAOBJECT_BOOL', 16); // is boolean #TODO
define('DB_DATAOBJECT_TXT',  32); // is long text #TODO
define('DB_DATAOBJECT_BLOB', 64); // is blob type


define('DB_DATAOBJECT_NOTNULL', 128);           // not null col.
define('DB_DATAOBJECT_MYSQLTIMESTAMP'   , 256);           // mysql timestamps (ignored by update/insert)

Bit flags may be combined by ORing them. Eg a VARCHAR (2) NOT NULL (128) would be 2 OR 128 = 130


CategoryProgramming

DB DataObjectConstants (last edited 2009-10-21 10:27:15 by DavidKeen)