2013-07-25 2 views
0

Я попытался следующие:JSON кодирования PHP показывает странные символы

<?php 
header('Content-Type: text/html; charset=utf-8'); 

$conn = mysql_connect("localhost", "dsds", "dsds"); 
mysql_select_db('dsdasds'); 
$sqlquery = "select * from discounts"; 
mysql_set_charset('utf8'); 

$result = mysql_query($sqlquery, $conn); 
if(! $result) 
{ 
    die('Could not get data: ' . mysql_error()); 
} 

/* 
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    echo $row['name']; 
} 
*/ 

$dataArray = array(); 
while($r = mysql_fetch_array($result)) 
{ 
    $dataArray[] = $r; 
} 

print json_encode($dataArray); 
?> 

и я получаю следующий результат:

[{"0":"\u0628\u0631\u0628\u0631\u064a ","name":"\u0628\u0631\u0628\u0631\u064a ","1":"55","rate":"55","2":"\u0627\u0644\u0631\u0627\u0634\u062f ","location":"\u0627\u0644\u0631\u0627\u0634\u062f ","3":"68","id":"68","4":"\u0627\u0644\u062e\u0628\u0631","city":"\u0627\u0644\u062e\u0628\u0631","5":"","duration":"","6":"","category":""}] 

данные верны, но как вы можете видеть не читаемым. Что я могу сделать для решения этой проблемы? Он должен показать арабские слова не то, что он теперь показывает

спасибо,

ответ

4

нужна специальная кодировка, чтобы иметь читаемый результат JSON из арабского характера (Unicode).

Вы можете указать иначе: JSON_UNESCAPED_UNICODE PHP 5.4 или новее.

json_encode('yourarabiccharacters', JSON_UNESCAPED_UNICODE); 
+0

Теперь я ничего не вижу. –

+2

Попробуйте изменить заголовок на заголовок ('Content-Type: application/json; charset = utf-8' '); – legrandviking

+0

nope даже более поздние странные символы –

Смежные вопросы