Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

COM constants
Constant Value Description Notes
CLSCTX_INPROC_SERVER (int) 1 The code that creates and manages objects of this class is a DLL that runs in the same process as the caller of the function specifying the class context.  
CLSCTX_INPROC_HANDLER (int) 2 The code that manages objects of this class is an in-process handler. This is a DLL that runs in the client process and implements client-side structures of this class when instances of the class are accessed remotely.  
CLSCTX_LOCAL_SERVER (int) 4 The EXE code that creates and manages objects of this class runs on same machine but is loaded in a separate process space.  
CLSCTX_REMOTE_SERVER (int) 16 A remote context. The code that creates and manages objects of this class is run on a different computer.  
CLSCTX_SERVER (int) 21 Indicates server code, whether in-process, local, or remote. This definition ORs CLSCTX_INPROC_SERVER, CLSCTX_LOCAL_SERVER, and CLSCTX_REMOTE_SERVER.  
CLSCTX_ALL (int) 23 Indicates all class contexts. This definition ORs CLSCTX_INPROC_HANDLER and CLSCTX_SERVER.  
VT_NULL (int) 1 NULL pointer reference.  
VT_EMPTY (int) 0 A property with a type indicator of VT_EMPTY has no data associated with it; that is, the size of the value is zero.  
VT_INT (int) 22 4-byte signed integer value (equivalent to VT_I4).  
VT_I1 (int) 16 1-byte signed integer.  
VT_I2 (int) 2 Two bytes representing a 2-byte signed integer value.  
VT_I4 (int) 3 4-byte signed integer value.  
VT_I8 (int) 20 8-byte signed integer value. Available as of PHP 7.0.0 (x64 only).
VT_UINT (int) 23 4-byte unsigned integer (equivalent to VT_UI4).  
VT_UI1 (int) 17 1-byte unsigned integer.  
VT_UI2 (int) 18 2-byte unsigned integer.  
VT_UI4 (int) 19 4-byte unsigned integer.  
VT_UI8 (int) 21 8-byte unsigned integer. Available as of PHP 7.0.0 (x64 only).
VT_R4 (int) 4 32-bit IEEE floating point value.  
VT_R8 (int) 5 64-bit IEEE floating point value.  
VT_BOOL (int) 11 Boolean value.  
VT_ERROR (int) 10 Error code; containing the status code associated with the error.  
VT_CY (int) 6 8-byte two's complement integer (scaled by 10,000).  
VT_DATE (int) 7 A 64-bit floating point number representing the number of days (not seconds) since December 31, 1899. For example, January 1, 1900, is 2.0, January 2, 1900, is 3.0, and so on). This is stored in the same representation as VT_R8.  
VT_BSTR (int) 8 Pointer to a null-terminated Unicode string.  
VT_DECIMAL (int) 14 A decimal structure.  
VT_UNKNOWN (int) 13 A pointer to an object that implements the IUnknown interface.  
VT_DISPATCH (int) 9 A pointer to a pointer to an object was specified.  
VT_VARIANT (int) 12 A type indicator followed by the corresponding value. VT_VARIANT can be used only with VT_BYREF.  
VT_ARRAY (int) 8192 If the type indicator is combined with VT_ARRAY by an OR operator, the value is a pointer to a SAFEARRAY. VT_ARRAY can use the OR with the following data types: VT_I1, VT_UI1, VT_I2, VT_UI2, VT_I4, VT_UI4, VT_INT, VT_UINT, VT_R4, VT_R8, VT_BOOL, VT_DECIMAL, VT_ERROR, VT_CY, VT_DATE, VT_BSTR, VT_DISPATCH, VT_UNKNOWN and VT_VARIANT.  
VT_BYREF (int) 16384 If the type indicator is combined with VT_BYREF by an OR operator, the value is a reference. Reference types are interpreted as a reference to data, similar to the reference type in C++.  
CP_ACP (int) 0 Default to ANSI code page.  
CP_MACCP (int) 2 Macintosh code page.  
CP_OEMCP (int) 1 Default to OEM code page.  
CP_UTF7 (int) 65000 Unicode (UTF-7).  
CP_UTF8 (int) 65001 Unicode (UTF-8).  
CP_SYMBOL (int) 42 SYMBOL translations.  
CP_THREAD_ACP (int) 3 Current thread's ANSI code page  
VARCMP_LT (int) 0 The left bstr is less than right bstr.  
VARCMP_EQ (int) 1 The two parameters are equal.  
VARCMP_GT (int) 2 The left bstr is greater than right bstr.  
VARCMP_NULL (int) 3 Either expression is NULL.  
NORM_IGNORECASE (int) 1 Ignore case sensitivity.  
NORM_IGNORENONSPACE (int) 2 Ignore nonspacing characters.  
NORM_IGNORESYMBOLS (int) 4 Ignore symbols.  
NORM_IGNOREWIDTH (int) 131072 Ignore string width.  
NORM_IGNOREKANATYPE (int) 65536 Ignore Kana type.  
NORM_IGNOREKASHIDA (int) 262144 Ignore Arabic kashida characters. Availability is dependent upon under lying library.
DISP_E_DIVBYZERO (int) -2147352558 A return error that indicates a divide by zero error. As of PHP 7.0.0, the value is 2147614738 on x64.
DISP_E_OVERFLOW (int) -2147352566 An error that indicates that a value could not be coerced to its expected representation. As of PHP 7.0.0, the value is 2147614730 on x64.
DISP_E_BADINDEX (int) -2147352565 An error that indicates that an array index does not exist. As of PHP 7.0.0, the value is 2147614731 on x64.
MK_E_UNAVAILABLE (int) -2147221021 iMoniker COM status code, return on errors where the function call failed due to unavailability. As of PHP 7.0.0, the value is 2147746275 on x64.