Database: Use the `utf8mb4_unicode_520_ci` collation, when available.
The `utf8mb4_unicode_520_ci` (Unicode Collation Algorithm 5.2.0, October 2010) collation is an improvement over `utf8mb4_unicode_ci` (UCA 4.0.0, November 2003). There is no word on when MySQL will support later UCAs. Fixes #32105. git-svn-id: https://develop.svn.wordpress.org/trunk@37523 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
c231052280
commit
a09ea91d16
|
@ -765,6 +765,11 @@ class wpdb {
|
||||||
$this->collate = str_replace( 'utf8_', 'utf8mb4_', $this->collate );
|
$this->collate = str_replace( 'utf8_', 'utf8mb4_', $this->collate );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// _unicode_520_ is a better collation, we should use that when it's available.
|
||||||
|
if ( $this->has_cap( 'utf8mb4_520' ) && 'utf8mb4_unicode_ci' === $this->collate ) {
|
||||||
|
$this->collate = 'utf8mb4_unicode_520_ci';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3193,6 +3198,7 @@ class wpdb {
|
||||||
*
|
*
|
||||||
* @since 2.7.0
|
* @since 2.7.0
|
||||||
* @since 4.1.0 Support was added for the 'utf8mb4' feature.
|
* @since 4.1.0 Support was added for the 'utf8mb4' feature.
|
||||||
|
* @since 4.6.0 Support was added for the 'utf8mb4_520' feature.
|
||||||
*
|
*
|
||||||
* @see wpdb::db_version()
|
* @see wpdb::db_version()
|
||||||
*
|
*
|
||||||
|
@ -3231,6 +3237,8 @@ class wpdb {
|
||||||
} else {
|
} else {
|
||||||
return version_compare( $client_version, '5.5.3', '>=' );
|
return version_compare( $client_version, '5.5.3', '>=' );
|
||||||
}
|
}
|
||||||
|
case 'utf8mb4_520' : // @since 4.6.0
|
||||||
|
return version_compare( $version, '5.6', '>=' );
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue