繁体   English   中英

PHP网址处理-urlencode不起作用-搅拌网址-特殊字符处理

[英]Php url handling -urlencode not working -Stirng to url -special charater handling

String  = "KOA Axial Carbon Film Resistor 3.3k? ±5% 0.25W -450 ? +350ppm/°C"

编码后出现错误链接

http://www.api.simplyduty.com/api/Classification/get-hscode?APIKey=A36AFAA1-A570-4279-84CC-ECE4B9EB76F6&fullDescription=KOA+Axial+Carbon+Film+Resistor+3.3k%CE%A9+%C2%B15%25+0.25W+-450+%E2%86%92+%2B350ppm%2F%C2%B0C&originCountry=AM&destinationCountry=AW

但是我想要这种类型的转换,因为浏览器会进行转换

http://www.api.simplyduty.com/api/Classification/get-hscode?APIKey=A36AFAA1-A570-4279-84CC-ECE4B9EB76F6&fullDescription=KOA%20Axial%20Carbon%20Film%20Resistor%203.3k?%20%C2%B15%%200.25W%20-450%20?%20+350ppm/%C2%B0C&originCountry=AM&destinationCountry=AW

正确的字符串我怎么能得到这个

"KOA%20Axial%20Carbon%20Film%20Resistor%203.3k?%20%C2%B15%%200.25W%20-450%20?%20+350ppm/%C2%B0C"

您可以看一下http://php.net/rawurlencode

php -r "echo rawurlencode('KOA Axial Carbon Film Resistor 3.3k? ±5% 0.25W -450 ? +350ppm/°C');"
KOA%20Axial%20Carbon%20Film%20Resistor%203.3k%3F%20%C2%B15%25%200.25W%20-450%20%3F%20%2B350ppm%2F%C2%B0C

警告,您预期的“正确”字符串会忘记编码4个字符:/%? +

斜杠由“%2F”编码,“%”由“%25”编码,“?” 由“%3F”编码,“ +”由“%2B”编码

因此,您可以像这样获取所需的字符串:

php -r "echo str_replace(['%2F', '%25', '%3F', '%2B'], ['/', '%', '?', '+'],  rawurlencode('KOA Axial Carbon Film Resistor 3.3k? ±5% 0.25W -450 ? +350ppm/°C'));"
KOA%20Axial%20Carbon%20Film%20Resistor%203.3k?%20%C2%B15%%200.25W%20-450%20?%20+350ppm/%C2%B0C

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM