Unserialize и кириллица
Всем привет. Пытаюсь вытащить из БД сериализованную строку и десериализовать ее. Все отлично работает, если строка на латинице. Если кириллица, то получаю false. Я так понимаю, что проблема с кодировками. Собственно, как решить? Читал, что кому-то помогло mysqli_query($link, "SET NAMES cp1251");
, ставил, результат тот же..
<?php
header('Content-type: text/html; charset=utf-8');
$name = $_POST['name'];
$link = mysqli_connect("localhost", "user", "password");
if(mysqli_connect_errno()) {
header("Location: create.php?success=-1");
exit;
}
$query = "SELECT cities FROM `agency`.`countries` WHERE name = '$name'";
$result = mysqli_query($link, $query);
while($row = mysqli_fetch_array($result)) {
$res = unserialize($row['cities']);
}
$res = json_encode($res);
echo $res;
?>
Обновление
Попробовал решить проблему функцией mysqli_set_charset, без изменений.
Обновление
Решил заменить serialize и unserialize на implode и explode, так как не вижу никаких ошибок в принципе. Если будут какие-то догадки пишите, интересно же, в чем причина.