What to do if php trim doesn't work

藏色散人
Release: 2023-03-06 10:18:01
Original
3944 people have browsed it

Solution for php trim not working: first trim accepts parameters in reverse order; then set the string for masking characters from the beginning and end of the string; finally use str_replace function with empty replacement string That’s it.

What to do if php trim doesn't work

Recommended: "PHP Video Tutorial"

Specific questions:

Why doesn't my php trim() function work?

I'm trying to use trim to remove the underline characters from the data returned to the $_post array. I tried using

 $post_Value= str_replace("_", " ", $key)
Copy after login

but the text doesn't seem to be returned as a string. There is a break between each entrance. Then I tried trimming like this:

 <?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";
 ?>
Copy after login

When I use the trim function, nothing happens, it doesn't remove the _ characters. My ultimate goal is to put the comma separated list into the database as a single string. Why doesn't my trim() function work in this case?

Update:
was found in the view page resource, so I had to do a combination of the following:

 $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";
Copy after login

Workaround:

First, trim() accepts parameters in reverse order: $str, then $character_mask. So you should use: $post_Value = trim($str, "_");

Secondly, trim() only sets the string for masking characters from the beginning and end of the string. If the string is surrounded by non-shielded characters, no masking characters are removed from the string.

Actually, you should use str_replace() with an empty replacement string (you tried using a single space as the replacement):

$post_Value= str_replace("_", "", $key)
Copy after login

If you also want to remove the
tag (In its typical variation), this can be done with a single str_replace() call, like this:

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

The above is the detailed content of What to do if php trim doesn't work. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template