PHP Data Type Reference

PHP DataType Reference

Data Type Column Type Range or Description Storage
Numeric TinyInt Signed values from -128 to 127
Unsigned values from 0 to 255
1 byte
Numeric SmallInt Signed values from -32768 to 32767
Unsigned values from 0 to 65535
2 bytes
Numeric MediumInt Signed values from -8388608 to 8388607
Unsigned values from 0 to 16777215
3 bytes
Numeric Int Signed values from -2147683648 to 2147483647
Unsigned values from 0 to 4294967295
4 bytes
Numeric BigInt Signed values from -9223372036854775808 to 9223372036854775807
Unsigned values from 0 to 18446744073709551615
8 bytes
Numeric Float Minimum non-zero values: 1.175494351E-38
Maximum non-zero values: 3.402823466E+38
4 bytes
Numeric Double Float Minimum non-zero values: 2.2250738585072014E-308
Maximum non-zero values: 1.7976931348623157E+308
8 bytes
Numeric Decimal Varies Maximum width + 2 bytes
String Char Range 1-255 characters Always filled max width
String VarChar Range 1-255 characters Length of string + 1 byte
String TinyBlob, TinyText Max length 255 characters Length of string + 1 byte
String Blob, Text Max length 65535 characters (~64KB of text) Length of string + 2 bytes
String MediumBlob, MediumText Max length 16777216 characters (16MB of text) Length of string + 3 bytes
String LongBlob, LongText Max length 4294967295 characters (4GB of text) Length of string + 4 bytes
String Enum (‘value’,’value2′,…) String object that can have only one set of allowed values 1 or 2 bytes
String Set (‘value’,’value2′,…) String object that can have one or many values of a set of allowed values. 1, 2, 3, 4, or 8 bytes
Date/Time Date ‘YY-MM-DD’, ‘YYYY-MM-DD’, ‘YYMMDD’
Range “1000-01-01” to “9999-12-31”
3 bytes
Date/Time Time ‘HH:MM:SS’, ‘HHMMSS’, ‘HHMM’, ‘HH’
Range “-838:59:59” to “838:59:59”
3 bytes
Date/Time DateTime ‘YYYY-MM-DD HH:MM:SS’
“0000-01-01 00:00:00” to “9999-12-31 23:59:59”
8 bytes
Date/Time TimeStamp 19700101000000 to sometime in the year 2037 4 bytes
Date/Time Year ‘YYYY’, ‘YY’ Range “1901” to “2155” 1 byte