Maison > développement back-end > Problème PHP > Que faire si le trim php ne fonctionne pas

Que faire si le trim php ne fonctionne pas

藏色散人
Libérer: 2023-03-06 10:18:01
original
4014 Les gens l'ont consulté

La solution pour php trim ne fonctionne pas : premier trim accepte les paramètres dans l'ordre inverse ; puis définissez la chaîne pour masquer les caractères du début et de la fin de la chaîne, enfin utilisez la fonction str_replace avec une chaîne de remplacement vide.

Que faire si le trim php ne fonctionne pas

Recommandé : "Tutoriel vidéo PHP"

Questions spécifiques :

Pourquoi ma fonction php trim() ne fonctionne-t-elle pas ?

J'essaie d'utiliser trim pour supprimer les caractères soulignés des données renvoyées au tableau de publication $u. J'ai essayé d'utiliser

 $post_Value= str_replace("_", " ", $key)
Copier après la connexion

mais le texte ne semble pas être renvoyé sous forme de chaîne. Il y a une pause entre chaque entrée. Ensuite j'ai essayé de découper comme ceci :

 <?php
$connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
 // Test if connection succeeded
 if (mysqli_connect_errno())
    {
    die("Database connection failed: " . mysqli_connect_error() . " (" .  mysqli_connect_errno() . ")");
}
 if (isset($_POST))
    {
    $str = "";
   foreach($_POST as $key => $value)
    {
    $str = $str . $key . ",";
    }
   $post_Value = trim("_", $str);
   }
   $query = "UPDATE player_match SET categoryOption=&#39;$$post_Value&#39; WHERE id=1";
 ?>
Copier après la connexion

Quand j'utilise la fonction trim, rien ne se passe, elle ne supprime pas les caractères _. Mon objectif ultime est de mettre la liste séparée par des virgules dans la base de données sous la forme d'une seule chaîne. Pourquoi ma fonction trim() ne fonctionne-t-elle pas dans ce cas ?

Mise à jour : trouvée
dans la ressource de la page d'affichage, j'ai donc dû faire une combinaison de :

 $post_Value= str_replace("<br_/>", "", $str);
        $post_Value2= str_replace("_", " ", $post_Value);
        $post_Value3= rtrim($post_Value2,",submit,");
        echo $post_Value3;
        $query="UPDATE player_match SET categoryOption=&#39;$post_Value3&#39; WHERE   id=1";
Copier après la connexion

Solution :

Tout d'abord, trim() accepte les arguments dans l'ordre inverse : $str, puis $character_mask. Vous devez donc utiliser : $post_Value = trim($str, "_");

Deuxièmement, trim() définit uniquement la chaîne pour masquer les caractères du début et de la fin de la chaîne. Si la chaîne est entourée de caractères non protégés, aucun caractère de masquage n'est supprimé de la chaîne.

En fait, vous devez utiliser str_replace() avec une chaîne de remplacement vide (vous avez essayé d'utiliser un seul espace comme remplacement) :

$post_Value= str_replace("_", "", $key)
Copier après la connexion

Si vous souhaitez également supprimer la balise
(Dans sa variante typique), cela peut être fait avec un seul appel str_replace(), comme ceci :

$post_Value= str_replace(array("_", "<br>", "<br/>", "<br />"), "", $key)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal