Skip to content

Latest commit

 

History

History
257 lines (173 loc) · 6.25 KB

README.md

File metadata and controls

257 lines (173 loc) · 6.25 KB

PHP LanguageCode library

Latest Stable Version License Total Downloads CI CodeCov PSR1 PSR4 PSR12

Traducciones: English

Librería PHP para obtener el nombre del lenguaje a partir del código.



Requisitos

Sistema operativo: Linux | Windows.

Versiones de PHP: 8.0 | 8.1 | 8.2.

Instalación

La mejor forma de instalar esta extensión es a través de Composer.

Para instalar PHP LanguageCode library, simplemente escribe:

composer require josantonius/language-code

El comando anterior sólo instalará los archivos necesarios, si prefieres descargar todo el código fuente puedes utilizar:

composer require josantonius/language-code --prefer-source

También puedes clonar el repositorio completo con Git:

clone https://github.com/josantonius/php-language-code.git

Clases disponibles

Clase LanguageCode

Josantonius\LanguageCode\LanguageCode

Obtener array con todos los códigos de idioma:

public static function all(): array

Obtener código de idioma desde el nombre del idioma:

public static function getCode(string $languageName): string|null

Obtener el nombre del idioma desde código de idioma:

public static function getName(string $languageCode): string|null

Clase LanguageCodeCollection

Josantonius\LanguageCode\LanguageCodeCollection

Obtener array con todos los códigos de idioma:

public static function all(): array

Obtener código de idioma desde el nombre del idioma:

public static function getCode(string $languageName): string|null

Obtener el nombre del idioma desde código de idioma:

public static function getName(string $languageCode): string|null

Uso

Ejemplo de uso para esta biblioteca:

Obtener array con todos los códigos de idioma

use Josantonius\LanguageCode\LanguageCode;

$languageCode = new LanguageCode();

$languageCode->all();
use Josantonius\LanguageCode\LanguageCodeCollection;

LanguageCodeCollection::all();

Resultado:

[
    'aa' => 'Afar',
    'ab' => 'Abkhazian',
    'af' => 'Afrikaans',
    'am' => 'Amharic',
    'ar' => 'Arabic',
    'ar-ae' => 'Arabic (U.A.E.)',
    'ar-bh' => 'Arabic (Bahrain)',
    'ar-dz' => 'Arabic (Algeria)',
    'ar-eg' => 'Arabic (Egypt)',
    'ar-iq' => 'Arabic (Iraq)',
    (...)
]

Obtener código de idioma desde el nombre del idioma

use Josantonius\LanguageCode\LanguageCode;

$languageCode = new LanguageCode();

$languageCode->getCode('Spanish'); // es
use Josantonius\LanguageCode\LanguageCodeCollection;

LanguageCodeCollection::getCode('Turkish'); // tr

Obtener el nombre del idioma desde código de idioma

use Josantonius\LanguageCode\LanguageCode;

$languageCode = new LanguageCode();

$languageCode->getName('eo'); // Esperanto
use Josantonius\LanguageCode\LanguageCodeCollection;

LanguageCodeCollection::getName('de'); // German

Listado en formato JSON

Ir al recurso.

Tests

Para ejecutar las pruebas necesitarás Composer y seguir los siguientes pasos:

git clone https://github.com/josantonius/php-language-code.git
cd php-language-code
composer install

Ejecutar pruebas unitarias con PHPUnit:

composer phpunit

Ejecutar pruebas de estándares de código con PHPCS:

composer phpcs

Ejecutar pruebas con PHP Mess Detector para detectar inconsistencias en el estilo de codificación:

composer phpmd

Ejecutar todas las pruebas anteriores:

composer tests

Tareas pendientes

  • Añadir nueva funcionalidad
  • Mejorar pruebas
  • Mejorar documentación
  • Mejorar la traducción al inglés en el archivo README
  • Refactorizar código para las reglas de estilo de código deshabilitadas (ver phpmd.xml y phpcs.xml)

Registro de Cambios

Los cambios detallados de cada versión se documentan en las notas de la misma.

Contribuir

Por favor, asegúrate de leer la Guía de contribución antes de hacer un pull request, comenzar una discusión o reportar un issue.

¡Gracias por colaborar! ❤️

Patrocinar

Si este proyecto te ayuda a reducir el tiempo de desarrollo, puedes patrocinarme para apoyar mi trabajo 😊

Licencia

Este repositorio tiene una licencia MIT License.

Copyright © 2017-actualidad, Josantonius