Bonjour,
Si je veux remplacer les mots suivant : Chagrin, Chagriner, Chagrineriez
Par : sorrow, To grieve, Would grieve
Le résultat est comme ceci : sorrow, sorrower, sorroweriez.
Comment faire pour qu'il accepte tous les mots comme des mots différent et qu'il n'ajoute pas simplement la terminaison ?
-
- <?php
- function caracteres($chaine){
- $chaine = str_replace
- (array('Chagrin','Chagriner','Chagrineriez')
- , array ( 'sorrow'
- , 'To grieve'
- , 'Would grieve'
- )
- , $chaine
- ) ;
- return $chaine;
- }
- ?>
-
-
- <?php
- $hostname = 'localhost';
- $username = 'xxxxxx';
- $password = 'cccccc';
- $dbname = 'traduction';
-
- try {
- $dbh = new PDO("mysql:host=$hostname;dbname=$dbname", $username, $password);
- $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- $sql = "SELECT id, news FROM francais WHERE id='4'";
- foreach ($dbh->query($sql) as $row)
- {
- print $row['id'] .' - <h1>'. caracteres($row['news']) . '</h1><br /><br />';
- }
- $dbh = null;
- }
- catch(PDOException $e)
- {
- echo $e->getMessage();
- }
- ?>
-
Merci de vos conseils
Jack Bocar
- <?php
- function caracteres($chaine) {
- $chaine = str_replace(array('Chagrineriez', 'Chagriner', 'Chagrin'), array('Would grieve', 'To grieve', 'sorrow'), $chaine);
- return $chaine;
- }
- ?>
Ceci devrait mieux fonctionner.