[英]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.