2010-11-06 4 views
1

Je veux assurer que tous les noms sont en majuscule, donc en php J'utilise:nom majuscule avec php apostrophe

$surname = ucfirst(strtolower($dataField)); 

Comment puis-je faire en sorte que tous les noms tels que O'Brien, ne donnent pas lieu à O « Brien

+2

La plupart des entreprises soit compter sur le jugement humain en ce qui concerne les noms, transformera tout en majuscules, ou ne pas compter seulement sur les conventions du client qui leur entrée nom. – amphetamachine

+0

http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/ – amphetamachine

Répondre

1
$surname = preg_replace('/\b(\w)(\w*)/', '\u$1\L$2', $surname); 

le \b est un métacaractère qui signifie « la frontière d'un mot. » \w signifie tout caractère de mot ([A-Za-z]). Le \u dans le remplacement signifie "majuscule la première lettre après." Le \L signifie "minuscule jusqu'à la fin du match."

Ce n'est en aucun cas une solution complète. Les ordinateurs sont un peu stupides quand il s'agit de noms humains.

This is a great article on the subject.

Questions connexes