PHP.mk документација

Колатор

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

class.collator.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека class.collator.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Колатор

Референца за `class.collator.php` со подобрена типографија и навигација.

class.collator.php

The Collator class

Класата Collator

Вовед

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

Синопсис на класата

class Колатор {
/* Константи */
public const int DEFAULT_VALUE;
public const int PRIMARY;
public const int SECONDARY;
public const int TERTIARY;
public const int DEFAULT_STRENGTH;
public const int QUATERNARY;
public const int IDENTICAL;
public const int OFF;
public const int ON;
public const int SHIFTED;
public const int NON_IGNORABLE;
public const int LOWER_FIRST;
public const int UPPER_FIRST;
public const int FRENCH_COLLATION;
public const int ALTERNATE_HANDLING;
public const int CASE_FIRST;
public const int CASE_LEVEL;
public const int NORMALIZATION_MODE;
public const int STRENGTH;
public const int NUMERIC_COLLATION;
public const int SORT_REGULAR;
public const int SORT_STRING;
public const int SORT_NUMERIC;
/* Методи */
public __construct(string $locale)
public asort(array &$array, int $flags = Collator::SORT_REGULAR): bool
public compare(string $string1, string $string2): int|false
public static create(string $locale): ?Колатор
public getAttribute(int $attribute): int|false
public getLocale(int $type): string|false
public getSortKey(string $string): string|false
public getStrength(): int
public setAttribute(int $attribute, int $value): bool
public setStrength(int $strength): true
public sort(array &$array, int $flags = Collator::SORT_REGULAR): bool
public sortWithSortKeys(array &$array): bool
}

Претходно дефинирани константи

Collator::FRENCH_COLLATION int

Обезбедува можност за споредба на низи со поддршка за соодветни подредби чувствителни на локалот. На Сортирај низи со различни акценти од задниот дел на низата. Овој атрибут автоматски се поставува на Наза француските локали и неколку други. Корисниците нормално не би требало експлицитно да го поставуваат овој атрибут. Постои цена на перформансите при споредба на низи кога е поставен

, но должината на клучот за сортирање не е засегната. Можни вредности се:

  • Пример #1 ПРАВИЛА ЗА ФРАНЦУСКО КОЛАЦИЈА
  • F=OFF cote < coté < côte < côté
Collator::ALTERNATE_HANDLING

F=ON cote < côte < coté < côté NonIgnorable Атрибутот Alternate се користи за контрола на ракувањето со таканаречените променливи знаци во UCA: празно место, пунктуација и симболи. Ако Alternate е поставен на (N), тогаш разликите меѓу овие знаци се од иста важност како разликите меѓу буквите. Ако Alternate е поставен на Shifted (N), тогаш разликите меѓу овие знаци се од иста важност како разликите меѓу буквите. Ако Alternate е поставен на (S), тогаш овие знаци се од само мала важност. Вредноста често се користи во комбинација со Strength поставен на Quaternary. Во таков случај, празно место, пунктуација и симболи се земаат предвид при споредба на низи, но само ако сите други аспекти на низите (основни букви, акценти и големина) се идентични. Ако Alternate не е поставен на Shifted, тогаш нема разлика помеѓу Strength од 3 и Strength од 4. За повеќе информации и примери, видете Variable_Weighting во» UCA На and Исклучено . Причината зошто вредностите Alternate не се едноставно

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

Example #2 ALTERNATE_HANDLING rules

  • S=3, A=N di Silva < Di Silva < diSilva < U.S.A. < USA
  • Example #2 ALTERNATE_HANDLING rules
  • S=3, A=N di Silva < Di Silva < diSilva < U.S.A. < USA
Collator::CASE_FIRST int

S=3, A=S di Silva = diSilva < Di Silva < U.S.A. = USA Uppercase_First S=4, A=S di Silva < diSilva < Di Silva < U.S.A. < USA Lowercase_First The Case_First attribute is used to control whether uppercase letters come before lowercase letters or vice versa, in the absence of other differences in the strings. The possible values are Стандардно and Исклучено(U) and Collation Customization(L), plus the standard

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

. There is almost no difference between the Off and Lowercase_First options in terms of results, so typically users will not use Lowercase_First: only Off or Uppercase_First. (People interested in the detailed differences between X and L should consult the

  • ). Specifying either L or U won't affect string comparison performance, but will affect the sort key length.
  • Example #3 CASE_FIRST rules
Collator::CASE_LEVEL int

C=X or C=L "china" < "China" < "denmark" < "Denmark" C=U "China" < "china" < "Denmark" < "denmark"The Case_Level attribute is used when ignoring accents but not case. In such a situation, set Strength to be НаPrimary На.

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

, and Case_Level to be

  • . In most locales, this setting is Off by default. There is a small string comparison performance and sort key impact if this attribute is set to be
  • Example #4 CASE_LEVEL rules
Collator::NORMALIZATION_MODE int

S=1, E=X role = Role = rôle На, тогаш најдобрите резултати се загарантирани за сите можни текстуални влезови. Постои среден трошок за перформансите при споредба на низи ако овој атрибут е На, во зависност од фреквенцијата на секвенци што бараат нормализација. Нема значителен ефект врз должината на клучот за сортирање. Ако е познато дека влезната текстуална порака е во форми на нормализација NFD или NFKD, нема потреба да се овозможи оваа опција за нормализација.

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

Collator::STRENGTH int

ICU услугата за споредба поддржува многу нивоа на споредба (именувани „Нивоа“, но познати и како „Јачини“). Постоењето на овие категории му овозможува на ICU прецизно да ги сортира низите според локалните конвенции. Сепак, со дозволување на селективно вработување на нивоата, пребарувањето на низа во текст може да се изврши со различни услови за совпаѓање. За подетални информации, видете collator_set_strength() chapter.

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

Collator::HIRAGANA_QUATERNARY_MODE int

Компатибилноста со JIS x 4061 бара воведување на дополнително ниво за разликување на хирагана и катакана знаци. Ако е потребна компатибилност со тој стандард, тогаш овој атрибут треба да биде поставен На, а јачината поставена на Кватернерна. Ова ќе влијае на должината на клучот за сортирање и на перформансите при споредба на низи.

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

Collator::NUMERIC_COLLATION int

Кога е вклучен, овој атрибут генерира клуч за споредба за нумеричката вредност на поднизи од цифри. Ова е начин да се добие „100“ да се сортира ПО „2“.

е што дополнителни вредности Alternate може да се додадат во иднина. Опцијата UCA Blanked се изразува со Strength поставен на 3, и Alternate поставен на Shifted. Стандардно за повеќето локали е NonIgnorable. Ако е избрано Shifted, може да биде побавно ако има многу низи кои се исти освен пунктуацијата; должината на клучот за сортирање нема да биде засегната освен ако нивото на јачина исто така не се зголеми.

Collator::DEFAULT_VALUE int
Collator::PRIMARY int
Collator::SECONDARY int
Collator::TERTIARY int
Collator::DEFAULT_STRENGTH int
Collator::QUATERNARY int
Collator::IDENTICAL int
Collator::OFF int
Collator::ON int
Collator::SHIFTED int
Collator::NON_IGNORABLE int
Collator::LOWER_FIRST int
Collator::UPPER_FIRST int
Collator::SORT_REGULAR int

Collator::SORT_STRING int

Collator::SORT_NUMERIC int

Дневник на промени

Верзија = NULL
8.4.0 Константите на класата сега се типизирани.

Содржина

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.