0
charsetの問題があります。
localhostではすべて正常に動作しますが、リモートサーバ上では、奇妙な文字がàやèのようなものに取って代わります。私はそれが文字セットの問題だと私は読むphp.ini(私はそれを編集することはできません)の問題があると思う。
は、私は多くのことを試してみたそれを解決するには、次の
私は、HTML上の ローカルサーバーからリモートサーバーへの文字セットの問題
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
を設定して、PHPの
ini_set('default_charset', 'UTF-8');
、私の上の
AddDefaultCharset utf-8
。 htaccessファイル
文字列にutf8_encodeを使用する場合l私がまだ見つけていないこの問題を解決する別の方法がありますか?
私がまだ見つけていないこの問題を解決する別の方法がありますか?
申し訳ありませんが、私はそれを言うのを忘れて:文字列は(私はYandexのAPIを使用しています)のfile_get_contentsで別のサイトから取得され
ここではいくつかのコードは次のとおりです。
$yandex = 'https://dictionary.yandex.net/api/v1/dicservice.json/lookup?key=my_api_key&lang=it-it&text=attualità';
// get json from this page
$object = json_decode(file_get_contents($yandex));
$syns_array = array();
$type = '';
// if the word exists
if (!empty($object->def) && $object->def != FALSE && $object->def != NULL)
{
$type = $object->def[0]->tr[0]->pos;
$rows = $object->def[0]->tr;
// if there're synonyms
if (!empty($rows) && $rows != FALSE && $rows != NULL)
{
foreach ($rows as $row)
{
array_push($syns_array, $row->text);
// if there're more rows with syns
if (!empty($row->syn) && $row->syn !== FALSE && $row->syn !== NULL)
{
foreach ($row->syn as $syns_obj)
{
array_push($syns_array, $syns_obj->text);
}
}
}
}
}
// I echo my synonyms from the array
foreach($syns_array as $syn) {
echo $syn;
}
どのようにそれらの文字を取得しましたか?それらはファイルにハードコードされているのですか、データベースから取得されていますか?チャオ。 – Federkun
ファイルがutf-8に保存されていることを確認してください...どのようにファイルをサーバーに転送しますか? –
私はデータベースを使用していません、私はYandexサイトからfile_get_contentsによって文字列を取ります –