Changeset 42343 for trunk/src/wp-admin/install-helper.php
- Timestamp:
- 11/30/2017 11:09:33 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-admin/install-helper.php
r42201 r42343 36 36 37 37 /** Load WordPress Bootstrap */ 38 require_once( dirname(dirname(__FILE__)).'/wp-load.php');39 40 if ( ! function_exists( 'maybe_create_table') ) :41 /**42 * Create database table, if it doesn't already exist.43 *44 * @since 1.0.045 *46 * @global wpdb $wpdb WordPress database abstraction object.47 *48 * @param string $table_name Database table name.49 * @param string $create_ddl Create database table SQL.50 * @return bool False on error, true if already exists or success.51 */52 function maybe_create_table($table_name, $create_ddl) {53 global $wpdb;54 foreach ($wpdb->get_col("SHOW TABLES",0) as $table ) {55 if ($table == $table_name) {56 return true;57 }58 }59 // Didn't find it, so try to create it.60 $wpdb->query($create_ddl);61 62 // We cannot directly tell that whether this succeeded!63 foreach ($wpdb->get_col("SHOW TABLES",0) as $table ) {64 if ($table == $table_name) {65 return true;66 }67 }68 return false;69 }38 require_once( dirname( dirname( __FILE__ ) ) . '/wp-load.php' ); 39 40 if ( ! function_exists( 'maybe_create_table' ) ) : 41 /** 42 * Create database table, if it doesn't already exist. 43 * 44 * @since 1.0.0 45 * 46 * @global wpdb $wpdb WordPress database abstraction object. 47 * 48 * @param string $table_name Database table name. 49 * @param string $create_ddl Create database table SQL. 50 * @return bool False on error, true if already exists or success. 51 */ 52 function maybe_create_table( $table_name, $create_ddl ) { 53 global $wpdb; 54 foreach ( $wpdb->get_col( 'SHOW TABLES', 0 ) as $table ) { 55 if ( $table == $table_name ) { 56 return true; 57 } 58 } 59 // Didn't find it, so try to create it. 60 $wpdb->query( $create_ddl ); 61 62 // We cannot directly tell that whether this succeeded! 63 foreach ( $wpdb->get_col( 'SHOW TABLES', 0 ) as $table ) { 64 if ( $table == $table_name ) { 65 return true; 66 } 67 } 68 return false; 69 } 70 70 endif; 71 71 72 if ( ! function_exists( 'maybe_add_column') ) :73 /**74 * Add column to database table, if column doesn't already exist in table.75 *76 * @since 1.0.077 *78 * @global wpdb $wpdb WordPress database abstraction object.79 *80 * @param string $table_name Database table name81 * @param string $column_name Table column name82 * @param string $create_ddl SQL to add column to table.83 * @return bool False on failure. True, if already exists or was successful.84 */85 function maybe_add_column($table_name, $column_name, $create_ddl) {86 global $wpdb;87 foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {88 89 if ($column == $column_name) {90 return true;91 }92 }93 94 // Didn't find it, so try to create it.95 $wpdb->query($create_ddl);96 97 // We cannot directly tell that whether this succeeded!98 foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {99 if ($column == $column_name) {100 return true;101 }102 }103 return false;104 }72 if ( ! function_exists( 'maybe_add_column' ) ) : 73 /** 74 * Add column to database table, if column doesn't already exist in table. 75 * 76 * @since 1.0.0 77 * 78 * @global wpdb $wpdb WordPress database abstraction object. 79 * 80 * @param string $table_name Database table name 81 * @param string $column_name Table column name 82 * @param string $create_ddl SQL to add column to table. 83 * @return bool False on failure. True, if already exists or was successful. 84 */ 85 function maybe_add_column( $table_name, $column_name, $create_ddl ) { 86 global $wpdb; 87 foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) { 88 89 if ( $column == $column_name ) { 90 return true; 91 } 92 } 93 94 // Didn't find it, so try to create it. 95 $wpdb->query( $create_ddl ); 96 97 // We cannot directly tell that whether this succeeded! 98 foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) { 99 if ( $column == $column_name ) { 100 return true; 101 } 102 } 103 return false; 104 } 105 105 endif; 106 106 … … 117 117 * @return bool False on failure, true on success or doesn't exist. 118 118 */ 119 function maybe_drop_column( $table_name, $column_name, $drop_ddl) {119 function maybe_drop_column( $table_name, $column_name, $drop_ddl ) { 120 120 global $wpdb; 121 foreach ( $wpdb->get_col("DESC $table_name",0) as $column ) {122 if ( $column == $column_name) {121 foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) { 122 if ( $column == $column_name ) { 123 123 124 124 // Found it, so try to drop it. 125 $wpdb->query( $drop_ddl);125 $wpdb->query( $drop_ddl ); 126 126 127 127 // We cannot directly tell that whether this succeeded! 128 foreach ( $wpdb->get_col("DESC $table_name",0) as $column ) {129 if ( $column == $column_name) {128 foreach ( $wpdb->get_col( "DESC $table_name", 0 ) as $column ) { 129 if ( $column == $column_name ) { 130 130 return false; 131 131 } … … 166 166 * @return bool True, if matches. False, if not matching. 167 167 */ 168 function check_column( $table_name, $col_name, $col_type, $is_null = null, $key = null, $default = null, $extra = null) {168 function check_column( $table_name, $col_name, $col_type, $is_null = null, $key = null, $default = null, $extra = null ) { 169 169 global $wpdb; 170 $diffs = 0;171 $results = $wpdb->get_results( "DESC $table_name");172 173 foreach ( $results as $row ) {174 175 if ( $row->Field == $col_name) {170 $diffs = 0; 171 $results = $wpdb->get_results( "DESC $table_name" ); 172 173 foreach ( $results as $row ) { 174 175 if ( $row->Field == $col_name ) { 176 176 177 177 // Got our column, check the params. 178 if ( ($col_type != null) && ($row->Type != $col_type)) {179 ++$diffs; 180 } 181 if ( ($is_null != null) && ($row->Null != $is_null)) {182 ++$diffs; 183 } 184 if ( ($key != null) && ($row->Key != $key)) {185 ++$diffs; 186 } 187 if ( ($default != null) && ($row->Default != $default)) {188 ++$diffs; 189 } 190 if ( ($extra != null) && ($row->Extra != $extra)) {191 ++$diffs; 192 } 193 if ( $diffs > 0) {178 if ( ( $col_type != null ) && ( $row->Type != $col_type ) ) { 179 ++$diffs; 180 } 181 if ( ( $is_null != null ) && ( $row->Null != $is_null ) ) { 182 ++$diffs; 183 } 184 if ( ( $key != null ) && ( $row->Key != $key ) ) { 185 ++$diffs; 186 } 187 if ( ( $default != null ) && ( $row->Default != $default ) ) { 188 ++$diffs; 189 } 190 if ( ( $extra != null ) && ( $row->Extra != $extra ) ) { 191 ++$diffs; 192 } 193 if ( $diffs > 0 ) { 194 194 return false; 195 195 }
Note: See TracChangeset
for help on using the changeset viewer.