Internationalization ResourceBundle 클래스

(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL intl >= 2.0.0)


소개

현지화된 소프트웨어 제품에는 메시지, 레이블, 서식 패턴과 같은 현재 로케일에 따라 사용자 정의할 데이터 세트가 필요한 경우가 많습니다. ICU 리소스 메커니즘을 사용하면 애플리케이션이 로캘 기반으로 로드할 수 있는 리소스 집합을 정의할 수 있으며 통합 로캘에 독립적인 방식으로 액세스할 수 있습니다.

이 클래스는 ICU 리소스 데이터 파일에 대한 액세스를 구현합니다. 이 파일은 ICU가 현지화된 데이터를 저장하는 데 사용하는 이진 데이터 배열입니다.

ICU 리소스 번들은 단순 리소스와 복잡한 리소스를 포함할 수 있습니다. 복잡한 리소스는 정수 인덱스 또는 문자열 인덱스(PHP 배열과 마찬가지로)가 될 수 있는 컨테이너입니다. 단순 자원은 문자열, 정수, 이진 데이터 필드 또는 정수 배열 유형일 수 있습니다.

ResourceBundle은 배열 액세스 패턴과 foreach를 통한 반복 및 클래스 메서드를 통한 액세스를 통해 데이터에 대한 직접 액세스를 지원합니다. 결과는 단순한 리소스의 경우 PHP 값이 되고 복잡한 리소스의 경우 ResourceBundle 객체가 됩니다. 모든 리소스는 읽기 전용입니다.


클래스 개요

class ResourceBundle implements IteratorAggregate, Countable {
  /* Methods */
  public __construct(?string $locale, ?string $bundle, bool $fallback = true)
  public count(): int
  public static create(?string $locale, ?string $bundle, bool $fallback = true): ?ResourceBundle
  public getErrorCode(): int
  public getErrorMessage(): string
  public get(string|int $index, bool $fallback = true): mixed
  public static getLocales(string $bundle): array|false
}
                

변경로그

버전 설명
8.0.0 ResourceBundle은 이제 IteratorAggregate를 구현합니다. 이전에는 Traversable이 대신 구현되었습니다.
7.4.0 ResourceBundle은 이제 Countable을 구현합니다.

기타


목차