Heim >Backend-Entwicklung >PHP-Problem >Was tun, wenn PHP Trim nicht funktioniert?
Lösung für PHP-Trim, das nicht funktioniert: Lassen Sie Trim zuerst die Parameter in umgekehrter Reihenfolge akzeptieren. Verwenden Sie dann die Anweisung „$post_Value = trim($str, „_“);“ und löschen Sie schließlich das Tag über die Funktion „str_replace“. Das ist es.
Empfohlen: „PHP-Video-Tutorial“
Spezifische Frage:
Ich versuche, mithilfe von Trim den Unterstrich aus den im $_POST-Array zurückgegebenen Daten zu entfernen. Ich habe versucht,
$post_Value= str_replace("_", " ", $key)
zu verwenden, aber der Text scheint nicht als einzelne Zeichenfolge zurückgegeben zu werden. Es wird zwischen jedem Eintrag unterbrochen. Dann versuche ich, so zu trimmen:
<?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='$$post_Value' WHERE id=1"; ?>
Wenn ich die Trim-Funktion verwende, passiert nichts. Das _-Zeichen wird nicht entfernt. Mein ultimatives Ziel ist es, eine durch Kommas getrennte Liste als einzelne Zeichenfolge in meiner Datenbank zu haben. Warum funktioniert meine trim()-Funktion in diesem Fall nicht?
UPDATE: 076402276aae5dbec7f672f8f4e5cc81 gefunden, daher musste ich die folgende Kombination 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='$post_Value3' WHERE id=1";
Lösung:
Zuerst akzeptiert trim() Parameter in umgekehrter Reihenfolge: $str ;
Dann gibt es $character_mask.
Also sollten Sie Folgendes verwenden: $post_Value = trim($str, "_");
Zweitens führt trim() die String-Verarbeitung für den String nur am Anfang und Ende des Strings durch. Wenn die Zeichenfolge von nicht abgeschirmten Zeichen umgeben ist, werden keine Maskierungszeichen aus der Zeichenfolge entfernt.
Eigentlich sollten Sie str_replace() mit einer leeren Ersatzzeichenfolge verwenden (Sie haben versucht, ein Leerzeichen als Ersatz einzufügen):
$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 diesem:
$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!