powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP кодировка
11 сообщений из 11, страница 1 из 1
PHP кодировка
    #39452513
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья, есть некий код из интернета, мало понятный для меня, но работающий :)
Код: php
1.
2.
3.
4.
5.
<?
$str = '%u0410%u043d%u0430%u0441%u0442%u0430%u0441%u0438%u044f';
$str2 = preg_replace ('~%u([\dA-F]{2})([\dA-F]{2})~ie', 'chr (hexdec ("\1")) . chr (hexdec ("\2"))', $str);
echo iconv ('UCS-2', 'WINDOWS-1251', $str2);
?>


исправно выдает "Анастасия"

но из моего источника на входе строка несколько иного вида:
Код: php
1.
Анастасия


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

и заодно на будущее как нормальное слово превратить на php в эти слешоцифры?
Заранее спасибо!
...
Рейтинг: 0 / 0
PHP кодировка
    #39452514
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jjj32заменить сначала проценты на слеши неспортивно, подскажите плиз, куда пнуть регулярку, чтобы оно взлетело?В смысле, в регулярке заменяете процент на слеш ("%" на "\\") и оно не взлетает или что?
...
Рейтинг: 0 / 0
PHP кодировка
    #39452515
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще код из интернета не любит пробелы, а в моем тексте они есть...
...
Рейтинг: 0 / 0
PHP кодировка
    #39452516
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, пробовал,
Код: php
1.
Warning: preg_replace() [function.preg-replace]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
...
Рейтинг: 0 / 0
PHP кодировка
    #39452526
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jjj32,

Ну не знаю, откуда оно... У меня Ваш код из первого поста регексп переваривает, но на iconv рубится, вываливает PHP Notice: iconv(): Detected an illegal character in input string in...
...
Рейтинг: 0 / 0
PHP кодировка
    #39452531
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jjj32но из моего источника на входе строка несколько иного вида:
Код: php
1.
Анастасия

Как вариант, собрать нормальную строку JSON и декодировать её:
Код: php
1.
2.
3.
<?php
$str = 'Анастасия';
var_dump(json_decode("{\"name\":\"$str\"}", true));
...
Рейтинг: 0 / 0
PHP кодировка
    #39452533
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, у меня выползает
Код: php
1.
array(1) { ["name"]=> string(18) "Анастасия" } 


кроме того, у меня довольно длинный текст с пробелами и пр.
...
Рейтинг: 0 / 0
PHP кодировка
    #39452538
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jjj32,

выбрось этот говнокод "из интетрета"

'UCS-2' в 2017 году - нонсенс
...
Рейтинг: 0 / 0
PHP кодировка
    #39452539
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Изопропил, ок, а по существу?
...
Рейтинг: 0 / 0
PHP кодировка
    #39452547
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jjj32vkle, у меня выползает
Код: php
1.
array(1) { ["name"]=> string(18) "Анастасия" } 

И что с того? Не желаете самостоятельно написать обращение к элементу массива и конвертнуть Ваш исходный utf-8 в нужную Вам кодировку?

jjj32кроме того, у меня довольно длинный текст с пробелами и пр.Ну, мегабайты оно точно осиляет. С пробелами, цифрами и многим другим.
...
Рейтинг: 0 / 0
PHP кодировка
    #39452558
jjj32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle, осилил, благодарю!
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP кодировка
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]