CURL: not fetching url with unicode characters
I'm using CURL to fetch a Yahoo! BOSS api url with a unicode query, but I'm getting an "bad request" error.
http://boss.yahooapis.com/ysearch/web/v1/கமல்ஹாசன்?appid={appid}&format=xml
The above url works fine and returns results in firefox.
Please could anybody help me to fix this.
$url = "http://bo开发者_JAVA技巧ss.yahooapis.com/ysearch/web/v1/கமல்ஹாசன்?appid={appid}&format=xml";
$ch - curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
you must urlencode your URL. follow the below codes:
$url = "http://yoursite.com/some-unicode-chars"
$path = parse_url($url, PHP_URL_PATH);
if ($path) {
    $segments = explode('/', $path);
    foreach($segments as $index => $segment) {
        $segments[$index] = urlencode($segment);
    }
    $url = str_replace($path, implode('/', $segments), $url);
}
// then use url in your curl command:
$handle = curl_init($url);
// ...
Take that கமல்ஹாசன் word and use Mysql_realescape string in PHP.
Regards, ARCHIT.
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论