Comment supprimer les caractères spéciaux d'une chaîne en PHP

How Remove Special Characters From String Php



Parfois, vous devrez peut-être supprimer des caractères spéciaux d'une chaîne à des fins de programmation. PHP a de nombreuses fonctions intégrées qui peuvent être utilisées pour supprimer les caractères spéciaux des données de chaîne. Ce didacticiel vous montre comment utiliser différents types de fonctions PHP intégrées pour supprimer les caractères spéciaux d'une chaîne.

La fonction str_replace()

Une fonction utile qui peut être utilisée pour supprimer des caractères spéciaux d'une chaîne est la str_replace() fonction. La chaîne vide doit être utilisée pour remplacer le caractère dans cette fonction pour supprimer le caractère spécifié. La syntaxe de cette fonction est donnée ci-dessous.







str_replace ($ch_recherche, $replace_str, $ chaîne_principale [,$compte ])

Les str_replace() La fonction peut prendre quatre arguments. Les trois premiers arguments sont obligatoires et le dernier argument est facultatif. Les $ch_recherche La variable stocke la valeur qui sera recherchée dans la chaîne. Les $replace_str La variable stocke la valeur qui sera remplacée à partir de la chaîne où le texte de recherche correspond. Vous devez utiliser une chaîne vide comme valeur du $replace_str variable pour supprimer le texte recherché de la chaîne principale. Les $compte L'argument stocke une valeur représentant le nombre de caractères remplacés ou supprimés.



Exemple : Utilisation str_replace() supprimer les caractères spéciaux

Le script suivant montre l'utilisation du str_replace() fonction pour supprimer un caractère spécial d'une chaîne de données. Une fonction définie par l'utilisateur est déclarée dans le script pour effectuer la tâche de remplacement. Les hachage (#), guillemet simple (') et point-virgule (;) les caractères sont utilisés comme caractères de recherche, tandis que la chaîne vide est utilisée comme texte de remplacement pour ces caractères.





/* Le script suivant supprimera certains

caractères spéciaux d'une chaîne en utilisant str_replace()

fonction

* /




//Définition de la chaîne principale

$mainstr = '#Ceci est un texte simple ;';



//La sortie avant la suppression

chassèrent ' Texte avant suppression :
'
.$mainstr;



//Appelle la fonction

$replacestr =rm_special_char($mainstr);



//Définir la fonction pour supprimer le caractère spatial

fonctionrm_special_char($ chaîne) {

//Supprimer '#',''' et ';' en utilisant la fonction str_replace()

$résultat = str_replace ( déployer ('#', '' ', ';'), '', $ chaîne);

//La sortie après suppression

chassèrent '
Texte après suppression :
'
.$résultat;

}

?>

Sortir





La sortie suivante apparaîtra après l'exécution du script ci-dessus. La valeur du texte principal est imprimée avant d'appeler le str_replace() fonction, et les trois caractères spéciaux sont supprimés du texte principal et imprimés plus tard.



La fonction preg_replace()

Les preg_replace() La fonction est utilisée pour remplacer les données de chaîne en fonction du modèle de recherche. La syntaxe de cette fonction est donnée ci-dessous.

preg_replace ( $motif, $remplacer, $chaîne [,$limite [,$compte]] )

Cette fonction peut prendre cinq arguments. Les trois premiers arguments sont obligatoires et les deux derniers arguments sont facultatifs. Les $motif L'argument est utilisé pour définir le modèle pour rechercher le(s) caractère(s) dans une chaîne. Les $remplacer L'argument est utilisé pour définir le texte de remplacement, et le texte de remplacement sera une chaîne vide utilisée pour supprimer les caractères spéciaux. Les $chaîne L'argument est utilisé pour définir la chaîne principale dans laquelle le motif sera recherché et remplacé.

Exemple : Utilisation de preg_replace() pour supprimer des caractères spéciaux

Le script suivant montre l'utilisation du preg_replace() fonction pour supprimer un caractère spécial particulier des données de chaîne. Le motif ‘[0-9/[0-9%$?]/s’ est utilisé dans la fonction pour rechercher les caractères. Cela recherchera tous les caractères « % », « $ » et « ? » dans les données de la chaîne et remplacera ces caractères par la chaîne vide si les caractères existent.



/* Le script suivant supprimera certains

caractères spéciaux d'une chaîne en utilisant preg_replace()

fonction

* /




//Définition de la chaîne principale

$mainstr = '200j'aime$phpprogrammation50 % ?.';



//La sortie avant la suppression

chassèrent ' Texte avant suppression :
'
.$mainstr;



//Appelle la fonction

$replacestr =rm_special_char($mainstr);



//Définir la fonction pour supprimer le caractère spatial

fonctionrm_special_char($ chaîne) {

//Supprimer '#',''' et ';' en utilisant la fonction str_replace()

$résultat = preg_replace ('/[0-9%$?]/s','', $ chaîne);

//La sortie après suppression

chassèrent '
Texte après suppression :
'
.$résultat;

}

?>

Sortir

La sortie suivante apparaîtra après l'exécution du script. La valeur du texte principal sera imprimée avant d'appeler le preg_replace() fonction. Les 200, 50, « % » et « ? » les caractères seront supprimés du texte principal et imprimés plus tard.

Les htmlspecialchars() et str_ireplace () Les fonctions

Les htmlspecialchars() et str_ireplace () Les fonctions sont utilisées pour convertir tous les caractères prédéfinis en HTML. Par exemple, ' < ' sera converti en ' & lt , '' & ' sera converti en ' & ,' etc. Vous pouvez utiliser ces fonctions pour supprimer l'effet de tout caractère prédéfini des données de chaîne.

Exemple : Utilisation htmlspecialchars() et str_ireplace () supprimer les caractères spéciaux

Le script suivant montre comment supprimer l'effet des caractères prédéfinis d'une chaîne en utilisant le htmlspecialchars() fonction. Puis le str_ireplace () La fonction est utilisée pour supprimer les entités HTML du texte. Les str_ireplace () la fonction fonctionne comme la str_replace() fonction, mais il peut effectuer des recherches insensibles à la casse. La chaîne principale contient du texte avec< h2 > et< b > balises. Ainsi, lorsque le texte s'imprime avant de supprimer l'effet des caractères prédéfinis, la chaîne sera affichée avec l'effet de l'en-tête HTML et des balises en gras. Le texte brut sera affiché après l'application des fonctions données.





//Définition de la chaîne principale

$mainstr = '

Bienvenue à LinuxHint

'
;



//La sortie avec les balises HTML

chassèrent 'Texte avant suppression :'.$mainstr;



//Le résultat après la suppression des balises HTML

chassèrent 'Texte après suppression :
'
.

str_ireplace ( déployer (' ', ' '
,'

','

'
),'',

htmlspecialchars ($mainstr));



?>

Sortir

La sortie suivante apparaîtra après l'exécution du script.

La fonction trim()

Les fonction trim() est utilisé pour supprimer des caractères spécifiques au début et à la fin d'une chaîne de données. Cette fonction ne peut pas supprimer des caractères au milieu d'une chaîne de données. Ainsi, vous ne pouvez utiliser cette fonction que si vous souhaitez supprimer des caractères spéciaux au début et à la fin d'une chaîne.

Exemple : Utilisation du fonction trim() supprimer les caractères spéciaux

Le script suivant montre l'utilisation du fonction trim() pour supprimer le ' @ ' et ' ! ’ caractères du début et de la fin de la variable chaîne $mainstr . La valeur de la $mainstr La variable sera imprimée à la fois avant et après la suppression des caractères.





//Définition de la chaîne principale

$mainstr = '@@Programmation web!!!.';



//La sortie avant d'utiliser trim()

chassèrent ' Texte avant suppression :
'
.$mainstr;



//La sortie après avoir utilisé trim()

chassèrent '
Texte après suppression :
'
. garniture ($mainstr,'@!');



?>

Sortir

La sortie suivante apparaîtra après l'exécution du script. Ici, deux ' @ ’ les caractères sont supprimés du début, et trois ‘ ! ’ les caractères sont supprimés de la fin de la variable chaîne $mainstr .

Conclusion

Ce didacticiel vous a montré quatre manières différentes de supprimer les caractères spéciaux des données de chaîne. J'espère que ce tutoriel aidera les lecteurs à appliquer les fonctions fournies dans cet article dans leur script.