Camelcase est une règle de dénomination dans laquelle le premier mot commence par une lettre minuscule, et en commençant par le deuxième mot, chaque mot a une lettre majuscule. La méthode de dénomination ressemble à un camelcase, par exemple: Camelcase.
En PHP, si le nom de la variable contient une ligne horizontale courte (`` -`), le nom doit être entouré de bretelles bouclées lors de son utilisation. Par exemple:
$stu_id = $student->{'stu-id'};
Mais si vous convertissez la ligne horizontale courte en nomenclature de camel, vous pouvez utiliser directement le numéro de point pour accéder à l'attribut:
$stu_id = $student->stuId;
Cela rend le code plus simple et plus facile à lire.
Utilisez la fonction `preg_replace» pour implémenter la courte ligne horizontale à la nomenclature de camel via des expressions régulières. Voici un exemple:
$str = 'student-name';
$str = preg_replace_callback('/-(\w)/', function($matches) {
return strtoupper($matches[1]);
}, $str);
echo $str; // Sortir studentName
Ce code convertit les lettres après la ligne horizontale courte de la chaîne en capitalisation via la fonction `preg_replace_callback`, réalisant ainsi la nomenclature de chameau.
Une autre façon consiste à utiliser la fonction `str_replace», à remplacer d'abord la ligne horizontale courte par des espaces, puis à capitaliser la première lettre de chaque mot et enfin de supprimer les espaces. L'exemple de code est le suivant:
$str = 'student-name';
$str = str_replace('-', ' ', $str);
$str = ucwords($str);
$str = str_replace(' ', '', $str);
echo $str; // Sortir studentName
Ce code remplace d'abord la ligne horizontale courte par un espace, puis utilise la fonction «UCWords» pour capitaliser la première lettre de chaque mot et supprime enfin l'espace.
Le composant String de Symfony fournit la méthode «Camelize», qui peut facilement convertir les lignes horizontales courtes en nomenclature Camel. Les exemples sont les suivants:
use Symfony\Component\String\Inflector\EnglishInflector;
$inflector = new EnglishInflector();
$str = 'student-name';
$str = $inflector->camelize($str);
echo $str; // Sortir studentName
Dans ce code, nous créons une instance de `EnglishInflector` en introduisant la classe` Symfony \ Component \ String \ Inflector \ EnglishInflector` et utilisez sa méthode de conversion `Camelize`.
Dans PHP, il existe de nombreuses façons de convertir les lignes horizontales courtes en nomenclature Camel, y compris en utilisant des méthodes telles que `prég_replace», `str_replace» et `Symfony String Components`. Selon les besoins réels, vous pouvez choisir le moyen le plus approprié d'optimiser la lisibilité et la maintenance de votre code.