1

我收到这样的请求,网址如下所示:http ://domain.com/page.php?text = {Arabic Word}

现在我正在尝试使用 $_GET['text'] 获取文本,但我一直在获取它,例如“????????” , 有什么问题

<?php
    header('Content-type: text/html; charset=UTF-8');
    include('EnTransliteration.class.php');
    $tr = new EnTransliteration();

    $str = iconv( "utf-8//TRANSLIT//IGNORE","windows-1256",  $_GET['text']);
    $en_str = $tr->ar2en($str);

    $string = <<<XML
    <root>
    <translation>$en_str</translation>
    </root>
    XML;

    $xml = new SimpleXMLElement($string);
    header('Content-type: text/xml; charset=UTF-8');
    echo $xml->asXML();
    ?>
4

4 回答 4

0

您的 HTML 表单需要明确声明数据必须以 UTF-8 格式发送。否则,它将使用用户的语言环境,这可能不是 windows-1256,当然也不是 UTF-8。

例如

<form action="" method="get" accept-charset="UTF-8">
于 2013-08-27T11:47:57.733 回答
0

您的 Apache 服务器可能不接受 UTF-8 URL 编码。请参阅答案以解决您的问题。

希望它会有所帮助:)

于 2013-08-27T11:41:22.537 回答
0

也许这可以帮助:

<?php
      $title = 'أبجد هوز';
      $path1 = '/product/'.rawurlencode($title);
      echo $path1."<br>";
      $path2 = rawurldecode($path1);
      echo $path2;
  ?> 
于 2013-08-27T11:51:49.467 回答
-1

1-打开开始

2开记事本

3-编写你的代码

4-保存文件时make Encoding: utf-8

5-文件名name.html name.php

于 2013-08-27T12:23:13.993 回答