Heim  >  Artikel  >  Backend-Entwicklung  >  Was tun, wenn PHP Trim nicht funktioniert?

Was tun, wenn PHP Trim nicht funktioniert?

藏色散人
藏色散人Original
2020-09-30 09:01:033812Durchsuche

Lösung für PHP-Trim, das nicht funktioniert: Zuerst akzeptiert Trim die Parameter in umgekehrter Reihenfolge; dann wird die Zeichenfolge zum Maskieren von Zeichen am Anfang und Ende der Zeichenfolge festgelegt. Verwenden Sie schließlich die Funktion str_replace mit einer leeren Ersetzungszeichenfolge.

Was tun, wenn PHP Trim nicht funktioniert?

Empfehlung: „PHP-Video-Tutorial

Spezifische Frage:

Warum funktioniert meine PHP-Trim()-Funktion nicht?

Ich versuche, durch Trimmen Unterstreichungszeichen aus den an das $u-Post-Array zurückgegebenen Daten zu entfernen. Ich habe versucht,

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

zu verwenden, aber der Text scheint nicht als Zeichenfolge zurückgegeben zu werden. Zwischen jedem Eingang gibt es eine Pause. Dann habe ich das Trimmen so versucht:

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

Wenn ich die Trim-Funktion verwende, passiert nichts, die _-Zeichen werden nicht entfernt. Mein ultimatives Ziel ist es, die durch Kommas getrennte Liste als einzelne Zeichenfolge in die Datenbank einzufügen. Warum funktioniert meine trim()-Funktion in diesem Fall nicht?

Update: 076402276aae5dbec7f672f8f4e5cc81 in der Ansichtsseitenressource gefunden, daher musste ich eine Kombination aus Folgendem ausführen:

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

Lösung:

Zuerst akzeptiert trim() Argumente in umgekehrter Reihenfolge: $str, dann $character_mask. Sie sollten also Folgendes verwenden: $post_Value = trim($str, "_");

Zweitens legt trim() nur die Zeichenfolge zum Maskieren von Zeichen am Anfang und Ende der Zeichenfolge fest. Wenn die Zeichenfolge von nicht geschützten Zeichen umgeben ist, werden keine Maskierungszeichen aus der Zeichenfolge entfernt.

Eigentlich sollten Sie str_replace() mit einer leeren Ersetzungszeichenfolge verwenden (Sie haben versucht, ein einzelnes Leerzeichen als Ersatz zu verwenden):

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

Wenn Sie auch das 0c6dc11e160d3b678d68754cc175188a-Tag entfernen möchten, können Sie dies tun Tun Sie dies mit einem einzelnen str_replace()-Aufruf wie folgt:

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

Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP Trim nicht funktioniert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn