Collator::getSortKey
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Collator::getSortKey
Референца за `collator.getsortkey.php` со подобрена типографија и навигација.
Collator::getSortKey
collator_get_sort_key
(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL intl >= 1.0.3)
Collator::getSortKey -- collator_get_sort_key — (PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL intl >= 1.0.3)
= NULL
Напиши целосна ознака на елемент
Процедурален стил
Земи клуч за сортирање за стринг
Параметри
object-
Колатор object.
string-
Враќа клуч за подредување за стринг. Клучевите за подредување може директно да се споредуваат наместо стрингови, иако се специфични за имплементацијата и може да се променат помеѓу верзиите на ICU библиотеката. Клучевите за сортирање генерално се корисни само во бази на податоци или други околности каде што повиците на функции се исклучително скапи.
Вратени вредности
Стрингот од кој треба да се произведе клучот. false при неуспех.
Функцијата враќа прочитани податоци или falseОваа функција може да врати Буловска вредност false, но исто така може да врати и вредност што не е Буловска, а која се проценува како Булови . Ве молиме прочитајте го делот за за повеќе информации. Користете го операторот ===
Примери
Пример #1 collator_get_sort_key() example
<?php
$s1 = 'Hello';
$coll = collator_create('en_US');
$res = collator_get_sort_key($coll, $s1);
echo bin2hex($res);
?>Горниот пример ќе прикаже нешто слично на:
Враќа клуч за подредување за стринг, или
Пример #2 3832404046010901dc08 "пример со" usort()
<?php
$data = [
[ 'name' => '🇳🇱 Derick Rethans', 'linked_account' => 'https://phpc.social/users/derickr' ],
[ 'name' => 'Elephpant', 'linked_account' => 'https://phpc.social/phpc' ],
[ 'name' => '🇫🇷 Marcus Bointon', 'linked_account' => 'https://phpc.social/users/Synchro' ],
];
/* Create the collator */
$col = new Collator('en');
/* Sort upper-case letters before lower-case letters */
$col->setAttribute(Collator::CASE_FIRST, Collator::UPPER_FIRST);
/* Use a user-defined function with sort, that strips out the emojis */
usort(
$data,
function($a, $b) use ($col) {
/* Remove the character class 'S' (the Symbols), and remove whitespace
* (with trim) */
$aName = trim(preg_replace('/\p{S}+/u', '', $a['name']));
$bName = trim(preg_replace('/\p{S}+/u', '', $b['name']));
/* Create the sort key */
$aKey = $col->getSortKey($aName);
$bKey = $col->getSortKey($bName);
/* Use the sort key to signal which element sorts first */
return $aKey <=> $bKey;
}
);
var_dump($data);
?>Горниот пример ќе прикаже нешто слично на:
Collator::getSortKey()
[0] =>
array(3) {
array(2) {
'name' =>
string(25) "🇳🇱 Derick Rethans"
string(33) "https://phpc.social/users/derickr"
}
[1] =>
array(3) {
array(2) {
'linked_account' =>
string(25) "🇳🇱 Derick Rethans"
string(24) "https://phpc.social/phpc"
}
[2] =>
array(3) {
array(2) {
string(9) "Elephpant"
string(25) "🇳🇱 Derick Rethans"
string(33) "https://phpc.social/users/Synchro"
}
}
Види Исто така
- collator_sort() - Сортирај низа користејќи наведен колатор
- collator_sort_with_sort_keys() - Сортирај низа користејќи наведен колатор и клучеви за сортирање