Quelles sont les lunettes de prescription non http://belgiquepharmacie.be/ Unie de liberté de santé oxford

Une fonction PHP utilitaire pour convertir une chaîne en notation CamelCase en mots réunis par un séparateur (par défaut, le caractère underscore _).

La fonction uncamel() supporte indifféremment, en entrée, les notations lowerCamelCase et UpperCamelCase.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
/**
 * Reverse a CamelCase string.
 *
 * Examples:
 *     uncamel('lowerCamelCase') === 'lower_camel_case'
 *     uncamel('UpperCamelCase') === 'upper_camel_case'
 *     uncamel('ThisIsAString') === 'this_is_a_string'
 *     uncamel('notcamelcase') === 'notcamelcase'
 *     uncamel('lowerCamelCase', ' | ') === 'lower | camel | case'
 *
 * @author    Mehdi Kabab <http://pioupioum.fr/>
 * @copyright 2010 Mehdi Kabab
 * @license   http://www.opensource.org/licenses/mit-license.html MIT License
 * @link      http://pioupioum.fr/snippets/php-uncamel-fonction-convertir-camel-case.html
 *
 * @param  string $content The CamelCase string.
 * @param  string $separator The glue for the compound words. Defaults to '_'.
 * @return string
 */
function uncamel($content, $separator = '_')
{
	$content = preg_replace('#(?<=[a-zA-Z])([A-Z])(?=[a-zA-Z])#e', "'$separator' . strtolower('$1')", $content);
	$content{0} = strtolower($content{0});
 
	return $content;
}
?>

Le forker (gist).

publicité (chargement)

10 réponses pour PHP : fonction uncamel() pour inverser une notation en CamelCase

  1. patpro dit :

    uncamel(“ÇaDevraitPasserÇa”); <- EPIC FAIL. :)

  2. piouPiouM dit :

    D’un autre côté si tu utilises des Ç dans tes noms de fonctions la porte est grande ouverte pour que tu ailles prendre l’air o/

  3. patpro dit :

    Faut penser unicode mon ami, U-Ni-Code. :) D’autant que preg_replace doit pouvoir manger un range de code ASCII/Hex/…

  4. Benoa dit :

    Excellent!

    @patpro: cette fonction a clairement été créée pour convertir des noms de méthodes. En tous cas je ne vois pas dans quel autre contexte l’utiliser. Du coup t’es passé pour un con là.

  5. patpro dit :

    Benoa : le trou de ta lorgnette est vraiment étroit si tu penses que la notation CamelCase se limite à des noms de fonctions, ou même au seul domaine de la programmation.

  6. Benoa dit :

    Je suis curieux de savoir ou trouver du camel case avec accents?

  7. piouPiouM dit :

    En restant dans le domaine de la programmation, on peut en trouver dans des sources codées avec les pieds ou encore, pour l’unicode, dans des sources rédigées en russe ou encore en japonais. On peut aussi considérer des pages de Wiki qui vont construire les permaliens en appliquant une transformation de case sur le premier caractère des mots (sans substitution des caractères accentués).

    Dans mon cas, je me suis borné à un contexte maîtrisé, où la convention de nommage impose l’utilisation des caractères [a-zA-Z], donc tout va bien :D

  8. Spy-Seth dit :

    Nota : le liens PHPDoc @link dans ton code source pointe sur une page 404 ;-)

  9. piouPiouM dit :

    Merci, c’est corrigé :)

  10. Bumbo dit :

    Pas un remplacement mais tout de même utile, il existe un filtre fournit dans le Zend Framework qui permet de faire ce genre de manipulation : http://framework.zend.com/manual/fr/zend.filter.inflector.html

Ajouter un commentaire


Syndication

Réseaux sociaux