Ну, если вы не хотите сортировать, то вы можете просто сохранить общее количество в переменной с типом более высокой точности, чем отдельные значения (например, использовать двойной для сохранения суммы поплавков или «квадрат») чтобы сохранить сумму удвоений). Это наложит штраф за производительность, но это может быть меньше стоимости сортировки.
Это проблема кодирования. Похоже, в какой-то момент данные представляются в виде ISO-8859-1.
Каждая часть вашего процесса должна быть в кодировке UTF-8.
Соединение с базой данных
Таблицы базы данных
Ваш PHP-файл (если вы используете специальные символы внутри этот файл, как показано в примере выше)
Заголовки content-type
, которые вы выводите
кодирование и декодирование json utf8:
json_encode($data, JSON_UNESCAPED_UNICODE)
json_decode($json, false, 512, JSON_UNESCAPED_UNICODE)
сила utf8 также может быть полезна: http://pastebin.com/2XKqYU49
header('Content-Type: application/json; charset=utf-8');
Если ваш исходный файл уже utf8, тогда удалите функции utf8_ *. php5 хранит строки в виде массива байтов.
Вы должны добавить метатег для кодирования в html И вы должны добавить заголовок http, который устанавливает transferencoding на utf-8.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
и в php
<?php
header('Content-Type: text/html; charset=utf-8');
Попробуйте отправить заголовок кодировки UTF-8:
<?php header ('Content-type: text/html; charset=utf-8'); ?>
И HTML-мета:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
$j_decoded = utf8_decode(json_decode($j_encoded));
РЕДАКТИРОВАТЬ или, если быть более точным $j_encoded = json_encode($j_encoded);
$j_decoded = json_decode($j_encoded);
, нет необходимости в en / decoding utf8 <meta charset="utf-8" />
Если вы получаете сообщение «неожиданный символ», вы должны проверить, есть ли спецификация (Маркер порядка байтов, сохраненный в вашем файле utf-8 json. Вы можете удалить первый символ или сохранить, если без спецификации.
Работа для меня:)
function jsonEncodeArray( $array ){
array_walk_recursive( $array, function(&$item) {
$item = utf8_encode( $item );
});
return json_encode( $array );
}
Для меня оба метода
<?php
header('Content-Type: text/html; charset=utf-8');
echo json_encode($YourData, \JSON_UNESCAPED_UNICODE);