簡體   English   中英

PHP $ _get從空格中刪除+

[英]php $_get remove + from spaces

我剛剛開始這個項目,而PHP不是我的語言(對不起,如果這是一個愚蠢的問題!嘗試過google,但也許我在搜索錯誤的東西)。

我試圖從GET獲取數據,並最終將其記錄到mysql數據庫中

數據將如下所示: http : //127.0.0.1/index.php?foo=1&hello+this+is+my+name=bob

foreach ($_GET as $key => $value){
    echo "Key: $key Val: $value<br>" ;
}

這將輸出:

Key: foo Val: 1
Key: hello_this_is_my_name Val: bob

當然可以,但是如何從$ key中刪除+號或下划線?

您可以使用php函數str_replace並在顯示輸出后

<?php
echo str_replace("_"," ",$key);
?>

句法

str_replace(find,replace,string,count) 

您可以使用str_replace將下划線替換為空格。 像這樣的東西:

echo str_replace('_', ' ', $value);

但是,當然,這也將替換您可能要保留的下划線。 因此,一個更好的選擇是urldecode()函數。

echo urldecode($value);

您可以在此處了解更多信息。

您可以使用preg_replace()從字符串中刪除下划線(_)和加號(+)

示例字符串:

$yourString = "This+is+my Testing_string_test";
$replace = preg_replace( '/[^a-zA-Z0-9]/', ' ', $yourString );
echo $replace; // This is my Testing string test

此模式/[^a-zA-Z0-9]/將替換下划線並在空格' '加號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM