PluginProbe
Cookie Consent – GDPR & CCPA Cookie Banner & Consent Manager / trunk
Cookie Consent – GDPR & CCPA Cookie Banner & Consent Manager vtrunk
0.0.11 0.0.10 0.0.9 0.0.8 0.0.7 0.0.6 trunk 0.0.1 0.0.2 0.0.3 0.0.4 0.0.5
cookiez / classes / database / database-constants.php

database-constants.php in Cookie Consent – GDPR & CCPA Cookie Banner & Consent Manager trunk, at classes/database/database-constants.php

78 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Cookiez\Classes\Database;
4
5 if ( ! defined( 'ABSPATH' ) ) {
6 exit; // Exit if accessed directly
7 }
8
9 class Database_Constants {
10 // column types
11 const INT = 'INT';
12 const BIGINT = 'BIGINT';
13 const VARCHAR = 'VARCHAR';
14 const TEXT = 'TEXT';
15 const LONGTEXT = 'LONGTEXT';
16 const DATETIME = 'DATETIME';
17 const TIMESTAMP = 'TIMESTAMP';
18 const ENUM = 'ENUM';
19 const BOOLEAN = 'BOOLEAN';
20 const TINYINT = 'TINYINT';
21
22 // Flags
23 const NOT_NULL = 'NOT NULL';
24 const NULL = 'NULL';
25 const DEFAULT = 'DEFAULT';
26 const AUTO_INCREMENT = 'AUTO_INCREMENT';
27 const COMMENT = 'COMMENT';
28 const UNSIGNED = 'UNSIGNED';
29 const ON_UPDATE = 'ON UPDATE';
30 const CURRENT_TIMESTAMP = 'CURRENT_TIMESTAMP';
31
32 const KEY = 'KEY';
33 const PRIMARY_KEY = 'PRIMARY KEY';
34 const UNIQUE = 'UNIQUE';
35 const FULLTEXT = 'FULLTEXT';
36
37 public static function get_col_type( $type, $length = null ) {
38 switch ( $type ) {
39 case self::INT:
40 return 'INT(' . $length . ')';
41 case self::BIGINT:
42 return $length ? 'BIGINT(' . $length . ')' : 'BIGINT';
43 case self::VARCHAR:
44 return 'VARCHAR(' . $length . ')';
45 case self::TEXT:
46 return 'TEXT';
47 case self::LONGTEXT:
48 return 'LONGTEXT';
49 case self::DATETIME:
50 return 'DATETIME';
51 case self::TIMESTAMP:
52 return 'TIMESTAMP';
53 case self::ENUM:
54 return 'ENUM(' . $length . ')';
55 case self::BOOLEAN:
56 return 'BOOLEAN';
57 case self::TINYINT:
58 return 'TINYINT(' . $length . ')';
59 default:
60 return 'VARCHAR(255)';
61 }
62 }
63
64 public static function build_flags_string( $flags = [] ): string {
65 return implode( ' ', $flags );
66 }
67
68 public static function build_key_string( $key, $column, $key_name = null ): string {
69 $key_name = $key_name ?? $column;
70
71 return $key . ' `' . $key_name . '` (`' . $column . '`)';
72 }
73
74 public static function get_primary_key_string( $column ): string {
75 return 'PRIMARY KEY (`' . $column . '`)';
76 }
77 }
78