php基于curl post實現發送url中文亂碼的解決辦法:首先確認網址編碼;然后使用curl需要加header設置charset,代碼為【$this_header = array(“charset=utf-8”)】。
php基于curl post實現發送url中文亂碼的解決辦法:
發送的指定網址的url參數,中文總是亂碼,指定網址是utf8編碼的,我發送的也是utf8編碼的。但是還是亂碼,開始用的file_get_contents,后來換成curl并在php.ini中開啟了php_curl,還是不行,又加了header終于解決。代碼如下:
$url = 'http://'; //調用接口的平臺服務地址$post_string = array('a'=>'b');$ch = curl_init();$this_header = array("content-type: application/x-www-form-urlencoded; charset=utf-8");curl_setopt($ch,curlopt_httpheader,$this_header);curl_setopt($ch, curlopt_url, $url);curl_setopt($ch, curlopt_postfields, $post_string);curl_setopt($ch, curlopt_returntransfer, true);curl_setopt($ch, curlopt_connecttimeout, 10);curl_setopt($ch, curlopt_timeout, 30);$result = curl_exec($ch);if($result)echo "<script>\\\\nalert(\\\\"同步成功! \\\\");\\\\n</script>";curl_close($ch);總結:解決此類編碼問題,首先,要確認兩個地方的編碼是什么,其次,如果編碼相同那么可以直接發送,使用curl需要加header設置charset,最后,多查多試,一種方法不行再換另一個試試,如果都不行,那么就從頭再考慮一遍問題,總能解決的。
相關學習推薦:php編程(視頻)
最高級的善良,是學會共情租用了阿里云的ecs云服務器不舔百度網盤阿里云盤,5款免費開源自建私人云盤程序推薦【淮北網站建設】做網站SEO優化,一定要有好的心態阿里云服務器可以掛模擬器office2010激活時出現error:0x8007000d的處理辦法百度云服務器炸了微信廣告“8-9月份”流量信息預告