2012-01-29 40 views
0

如何在PHP中使用cURL发布阿拉伯文字?如何在PHP中使用cURL发布阿拉伯文文本?

$postData = array(
    'msg' => 'مرحبا' 
); 

curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); 
+1

什么不符合您当前的代码? – Bojangles 2012-01-29 17:39:46

+1

阿拉伯字符 – faressoft 2012-01-29 17:41:06

+0

您的PHP页面是否编码为UTF-8?您是否在HTML中使用了元标记来指示文件是UTF-8? – Hossein 2012-01-29 18:30:49

回答

0

正常应用程序中的CURL POST/x-www-form-urlencoded类。

所以我认为你需要设置字符集。

你能尝试用其他选项添加此:

curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml;charset=utf-8")); 

希望这有助于:)

+0

它不起作用 – faressoft 2012-03-04 03:23:47

0

编码与urlencode发布数据...

+0

它不起作用 – faressoft 2012-03-04 03:24:50

0

尝试设置页眉和设置选项如下:

$header = array("Content-type:text/xml; charset=utf-8"); 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); 
curl_setopt($ch, CURLINFO_HEADER_OUT, 1); 

然后你可以发布你的数据。

最后,不要忘了承诺:

curl_setopt($ch, CURLOPT_POSTFIELDS, "<commit />"); 

(这是从工作方面采取)

0

试试这个,使用GET方法时。

<?php 
//step1 
$cSession = curl_init(); 
//step2 
curl_setopt($cSession,CURLOPT_URL,"http://www.google.com/search?q=curl"); 
curl_setopt($cSession,CURLOPT_RETURNTRANSFER,true); 
curl_setopt($cSession,CURLOPT_HEADER, false); 
//step3 
$result=curl_exec($cSession); 
//step4 
curl_close($cSession); 
//step5 
echo $result; 
?>