定制 comecaramelos/i18n-iso-relations 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

comecaramelos/i18n-iso-relations

Composer 安装命令:

composer require comecaramelos/i18n-iso-relations

包简介

Composer package for ISO 639-1 (languages) and ISO 3166-1 (countries) relationships with locale generation and validation

README 文档

README

Gestión de relación entre idiomas (ISO 639-1) y países (ISO 3166-1) para generar y validar locales en formato estándar (ej: es_ES, en_AU)

Instalación

composer require comecaramelos/i18n-iso-relations

Uso Básico

Crear instancia desde código de idioma

use ComeCaramelos\I18nIsoRelations\IsoRelations;

$iso = IsoRelations::fromLangCode('es'); // o IsoRelations::fromIso6391('es')

echo $iso->getLocale(); // es_ES
echo $iso->getLangCode(); // es
echo $iso->getCountryCode(); // ES

Crear instancia desde código de país

use ComeCaramelos\I18nIsoRelations\IsoRelations;

$iso = IsoRelations::fromCountryCode('FR'); // o IsoRelations::fromIso31661('FR')

echo $iso->getLocale(); // fr_FR
echo $iso->getLangCode(); // fr
echo $iso->getCountryCode(); // FR

Crear instancia desde locale

use ComeCaramelos\I18nIsoRelations\IsoRelations;

$iso = IsoRelations::create('fr', 'CA'); // o IsoRelations::create('fr_CA')
var_dump($iso->getValidLangCodes()); // array ['en', 'fr']
var_dump($iso->getValidCountryCodes()); // array ['FR', 'CA', 'BE', 'CH', 'LU', 'SN', 'CI', 'CM', 'MA', 'DZ', 'TN']

Datos aleatorios

use ComeCaramelos\I18nIsoRelations\IsoRelations;

// Instancia aleatoria
$iso = IsoRelations::createRandom();

// Valores aleatorios relacionados
$randomLang = $iso->getRandLangCode();
$randomCountry = $iso->getRandCountryCode();

API Completa

Métodos Estáticos

MétodoAliasTipoDescripción
create(string $iso6391, ?string $iso31661)-classCrear instancia con ambos códigos individuales o desde un locale
createRandom()-classCrear instancia aleatoria
fromIso31661(string $code)fromCountryCode()stringCrear instancia desde código ISO 3166-1
fromIso6391(string $code)fromLangCode()stringCrear instancia desde código ISO 639-1
getAllCombinations()-arrayObtener todas las combinaciones idioma-país
getAllIso31661Codes()-arrayObtener todos los códigos de país
getAllIso6391Codes()-arrayObtener todos los códigos de idioma

Métodos de Instancia

MétodoAliasDescripción
getIso6391()getLangCode()Obtener código ISO 639-1
getIso31661()getCountryCode()Obtener código ISO 3166-1
getLocale()-Obtener locale en formato {lang}_{COUNTRY}
getValidIso6391()getValidLangCodes()Obtener idiomas válidos para el país actual
getValidIso31661()getValidCountryCodes()Obtener países válidos para el idioma actual
getRandIso6391()getRandLangCode()Obtener idioma aleatorio válido para el país
getRandIso31661()getRandCountryCode()Obtener país aleatorio válido para el idioma
toArray()-Convertir a array
toJson()-Convertir a JSON

Licencia

MIT

Autor

ComeCaramelos

Cambios Recientes

v1.0.0

  • Lanzamiento inicial

comecaramelos/i18n-iso-relations 适用场景与选型建议

comecaramelos/i18n-iso-relations 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 41 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 04 月 07 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「i18n」 「locale」 「countries」 「localization」 「languages」 「iso-3166-1」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 comecaramelos/i18n-iso-relations 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 comecaramelos/i18n-iso-relations 我们能提供哪些服务?
定制开发 / 二次开发

基于 comecaramelos/i18n-iso-relations 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 41
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 34
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-04-07