Utilisation du composant Symfony string pour récupérer le singulier ou pluriel d'un mot
Publié le 15/10/2022 • Actualisé le 15/10/2022
Dans ce bout de code, nous voyons comment utiliser le composant Symfony string pour récupérer le singulier ou pluriel d'un mot. Ce n'est pas une tâche facile, tant il y a de cas spéciaux. Veuillez noter que ces fonctions retournent un tableau de résultats et non une chaîne, en effet, il est possible d'avoir plus d'un résultat (dépendant de contextes différents). L'inflecteur est aussi disponible en français.
<?php
declare(strict_types=1);
namespace App\Controller\Snippet;
use Symfony\Component\String\Inflector\EnglishInflector;
use Symfony\Component\String\Inflector\FrenchInflector;
/**
* J'utilise un trait PHP afin d'isoler chaque snippet dans un fichier.
* Ce code doit être apellé d'un contrôleur Symfony étendant AbstractController (depuis Symfony 4.2)
* ou Symfony\Bundle\FrameworkBundle\Controller\Controller (Symfony <= 4.1).
* Les services sont injectés dans le constructeur du contrôleur principal.
*/
trait Snippet223Trait
{
public function snippet223(): void
{
// English
$inflector = new EnglishInflector();
$result = $inflector->pluralize('tooth');
print_r($result);
$result = $inflector->singularize('leaves');
print_r($result);
// French
$inflector = new FrenchInflector();
$result = $inflector->pluralize('hibou');
print_r($result);
$result = $inflector->singularize('chevaux');
print_r($result);
// That's it! 😁
}
}
Exécuter le snippet Plus sur Stackoverflow Lire la doc Snippet aléatoire