php – UTF8到CP1255的转换

我想将UTF-8字符串转换为CP1255(希伯来语)

我尝试运行以下(我使用detect_encoding,因为我的一些输入不是UTF-8):

foreach($param as $key=>$value){
    $newval = iconv(mb_detect_encoding($value),"cp1255",$value);
    $querystr .= $key."=".$newval."&";
}

无论如何,结果是所有希伯来字符都返回漂亮的 符号,
所有其他人(英语/数字)都符合预期,并希望保持完整.

我该怎么做呢?

解决方法:

我找到了一个解决方案:

foreach($param as $key=>$value){
    $value_encoding = mb_detect_encoding($value);
    if($value_encoding == "UTF-8"){
        $newval = iconv($value_encoding,"cp1255",$value);
    }else{
        $newval = $value;
    }
    $endpoint = add_query_arg($key,$newval,$endpoint);
}

$content = file_get_contents($endpoint);
上一篇:Shell 指令


下一篇:php – 如何检测哪种类型的中文编码有文本文件?