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

藏色散人
藏色散人original
2020-09-04 10:40:112847parcourir

La solution pour que php trim ne fonctionne pas : faites d'abord en sorte que trim accepte les paramètres dans l'ordre inverse ; puis utilisez l'instruction "$post_Value = trim($str, "_");" pour enfin passer la fonction "str_replace" ; peut supprimer l’étiquette.

Que faire si le trim php ne fonctionne pas

Recommandé : "Tutoriel vidéo PHP"

Questions spécifiques :

J'essaie d'utiliser trim pour supprimer les caractères soulignés des données renvoyées dans le tableau $_POST. J'ai essayé d'utiliser

 $post_Value= str_replace("_", " ", $key)

mais le texte ne semble pas être renvoyé sous la forme d'une seule chaîne. Il est rompu 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";
 ?>

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

MISE À JOUR : Trouvé076402276aae5dbec7f672f8f4e5cc81 compte tenu des ressources de la page, j'ai donc dû faire la combinaison suivante :

       $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";

Solution :

Premier , trim() accepte les paramètres dans l'ordre inverse : $str;

puis $character_mask.

Vous devez donc utiliser : $post_Value = trim($str, "_");

Deuxièmement, trim() effectue une manipulation de chaîne sur la chaîne uniquement au début et à 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 devriez utiliser str_replace() avec une chaîne de remplacement vide (vous avez essayé de mettre un espace en remplacement) :

$post_Value= str_replace("_", "", $key)

Si vous souhaitez également supprimer la balise 0c6dc11e160d3b678d68754cc175188a Dans sa variante typique), vous pouvez le faire avec un seul appel str_replace(), comme ceci :

$post_Value= str_replace(array("_", "<br>", "<br/>", "<br />"), "", $key)

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!

Déclaration:
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