Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Декодирование символа

, curl и кодировка.
Статус пользователя StarKlimb
сообщение 18.9.2013, 18:26
Сообщение #1
Стаж: 14 лет

Сообщений: 349
Благодарностей: 190
Полезность: 794

Curl-ом зачитываю информацию с сайта, если просто echo $str; выводит всю строку, но если вывести один символ $str[1]; //выглядит как закрашенный треугольник с знаком вопроса по середине. проверил что за символ, гамма. код: 194.
str_replace не помогает. заменить его тоже не работает $str[1]= ''; передвигает символ
в header указал utf-8, на сайте откуда зачитываю информацию тоже utf-8.
строка из чисел в $str[1 и 2] ненужные символы, нужно получить число

Отредактировал: StarKlimb, - 18.9.2013, 18:31
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя kuznets92
сообщение 19.9.2013, 8:10
Сообщение #2


Стаж: 14 лет

Сообщений: 616
Благодарностей: 284
Полезность: 700

А если так:
Код
$first_symbol = substr($str, 0, 1);



Если вам нужно получить число, а строка примерно следующего содержания:
Код
$str = '123_blablabla';

то сделайте так
Код
$str = (int)$str;
echo $str; // 123


Если у вас что-то вроде этого:
Код
$str = '5 blablabla';

то сделайте так
Код
$str = explode(' ', $str);
echo $str[1]; // 5


Посмотрите про строковые функции - http://php.net/manual/ru/ref.strings.php
Наверняка найдёте что-то нужное вам.

Отредактировал: kuznets92, - 19.9.2013, 8:22
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Frostiks
сообщение 19.9.2013, 10:36
Сообщение #3


Стаж: 12 лет

Сообщений: 145
Благодарностей: 38
Полезность: 70

Не мучайся, вывиди на печать переменную (var_dump), и уже реализуй вывод, а про вывод данных по типу забудь, это порнография в php
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Flesh
сообщение 29.9.2013, 11:40
Сообщение #4


Стаж: 17 лет

Сообщений: 319
Благодарностей: 168
Полезность: 776

Вся проблема заключается в том что в Unicode на каждый символ отводится 2 байта.
Тебе нужно использовать эту функцию:
Код:
$first_symbol = mb_substr($str, 0, 1);
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Frostiks
сообщение 29.9.2013, 11:53
Сообщение #5


Стаж: 12 лет

Сообщений: 145
Благодарностей: 38
Полезность: 70

Да кстати, mb_substr поможет тебе, т.к она работает с многобайтными символами
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: