dppfxf909679 2017-08-02 21:25
浏览 219
已采纳

PHP POST请求特殊字符

I'm trying to send a special character, such as ñ, through a POST request in PHP. When I do it, it comes out as ñ, what is wrong and how do I fix it?

I'm sending and receiving the post request in PHP, here is what I use to send it:

$url = '<url>';
$data = array('key' => 'ñ');

$options = array(
    'http' => array(
        'header'  => "Content-type: application/x-www-form-urlencoded
",
        'method'  => 'POST',
        'content' => http_build_query($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

echo $result;

Thanks in advance!

  • 写回答

1条回答 默认 最新

  • douyong1850 2017-08-02 21:43
    关注

    Try using this:

    $data = array('key' => urlencode('ñ'));
    

    And in the $url file:

    $_POST['key']=urldecode($_POST['key']);
    

    This is how I use to send special characters in GET and POST method with ajax, it must work for php too.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败