2012-10-30 69 views
1

我使用破滅創建一個查詢字符串,但沒有出現在它的一個意想不到的符號和IM不能確定它是從哪裏意外的符號破滅

未來如果任何人有這將是大加讚賞任何見解。

$url = "https://mypay.com/billing/signup.cgi"; 



$key = "11"; 
$key .= "11"; 
$key .= "GBP"; 
$key .= "QQDNfAHlC2WEEfhfhFFdhbdf"; 

$variables[] = "?formDigest=".md5($key); 
$variables[] = "clientAccnum=1111"; 
$variables[] = "clientSubacc=1111"; 
$variables[] = "formName=108ck"; 
$variables[] = "formPrice=11"; 
$variables[] = "formPeriod=11"; 
$variables[] = "currencyCode=GBP"; 


$url .= implode("&", $variables); 

echo $url; 

絃樂

https://bill.ccbill.com/jpost/signup.cgi?formDigest=df03f2b103f79bd5de34c6cfea405ec5&clientAccnum=1111&clientSubacc=1111&formName=108ck&formPrice=11&formPeriod=11¤cyCode=GBP

通知¤符號CURRENCYCODE地方應該是。

感謝您的幫助!

+2

的符號'¤' – air4x

回答

4

implode工作正常。

這裏的問題是,您正在輸出HTML文本(echo $url),但是您沒有正確編碼與htmlspecialchars的HTML特殊字符。

當瀏覽器看到子字符串&currencyCode=GBP時,它猜測你一定是指¤Code=GBP; ¤是貨幣符號的HTML entity,所以這就是您在屏幕上看到的內容。

將代碼更改爲echo htmlspecialchars($url)以查看直接差異;對於完全正確的解決方案,要注意並給出正確的值,前三個參數爲htmlspecialchars

-1

& CURREN」 會顯示這樣...修改變量名 「CURRENCYCODE」 到別的東西,它會工作

問候

薩迪普