[RESOLU] Changer la casse d'un caractère

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Changer la casse d'un caractère

Re: [RESOLU] Changer la casse d'un caractère

par or 1 » 30 sept. 2016, 14:20

un prénom peut-être composé.
il existe la fonction http://php.net/manual/fr/function.ucwords.php

Re: Changer la casse d'un caractère

par fitnopk » 30 sept. 2016, 13:54

salut,

as tu simplement essayé
<?php
 $line[11][0] = strtoupper( $line[11][0]);
exemple
<?php
 $line[11] = 'toto';
 $line[11][0] = strtoupper($line[11][0]);
var_dump($line);
retourne Toto

@+
Ah, ouai, j'ai tendance à oublier qu'un caractère c'est une chaine de caractères de 1 caractère, du coup quand ça demande un string je pense pas forcément au fait que ça puisse marcher avec un simple caractère :roll:
Thanks

Re: Changer la casse d'un caractère

par moogli » 30 sept. 2016, 12:38

salut,

as tu simplement essayé
<?php
 $line[11][0] = strtoupper( $line[11][0]);
exemple
<?php
 $line[11] = 'toto';
 $line[11][0] = strtoupper($line[11][0]);
var_dump($line);
retourne Toto

@+

Changer la casse d'un caractère

par fitnopk » 30 sept. 2016, 12:31

Bonjour bonjour,

Je suis de retour avec un problème stupide. En fait je traite les noms et prénoms de plusieurs personne.
Si c'est un nom, je fais un strtoupper, et si c'est un prénom, un strlower, le problème c'est que strtolower me met tout en minuscule mais je veux garder la majuscule en début de prénom.

Débarquant tout droit du C, j'ai bien essayé un -= 32 sur le caractère, mais php a pas l'air d'aimer, du coup je ne vois pas très bien comme on est supposer faire ça en php :|

Code : Tout sélectionner

function checkContactName(&$line) { if (empty($line[11]) || !preg_match('#[A-Za-z]#', $line[11])) { $line[11] = "TBD"; } else { $line[11] = strtolower(trim($line[11])); $line[11][0] -= 32; } if (empty($line[12]) || !preg_match('#[A-Za-z]#', $line[12])) { $line[12] = "TBD"; } else { $line[12] = strtoupper(trim($line[12])); } }