С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
2 / 2 / 1
Регистрация: 29.08.2011
Сообщений: 150
1

Функция Substr()

27.04.2012, 01:04. Показов 3285. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет объясните пожалуйста что это за бред!!!

PHP
1
2
3
$name = 'Евгений';
$str = substr($name,1,3);
echo $str;
Вместо того чтобы на выходе получить 'вге' я получаю иероглиф и букву в!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.04.2012, 01:04
Ответы с готовыми решениями:

Функция substr()
Есть функция substr() в php, которая возвращает подстроку. Как сделать так, чтобы при вырезании...

Функция substr не режет строку
substr не режит строку токого вида:...

Функция substr, вывод первого символа строки
Хотел применить функцию substr и выбрать первый символ из полей таблицы БД, но что-то не...

substr()
по каким причинам код такого характера substr($name_site, 0, 4); Обрезает лишь два символа вместо...

7
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
27.04.2012, 01:08 2
проверьте кодировку. и попробуйте эту ф-ю mb_substr
0
2 / 2 / 1
Регистрация: 29.08.2011
Сообщений: 150
27.04.2012, 01:15  [ТС] 3
Цитата Сообщение от Love_and_Peace Посмотреть сообщение
проверьте кодировку. и попробуйте эту ф-ю mb_substr
Та же фигня и с функцией mb_substr,кодировка UTF-8

Добавлено через 2 минуты
Просто данные из базы а именно имя и отчество решил обработать этой функцией и на выходе получил иероглифы,думал проблема при извлечении данных,решил проверить в чистом пхп файле без никаких бд и та же история(((
0
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
27.04.2012, 01:26 4
мм.., думаю, что дело все-таки в кодировке, попробуйте такое -
создайте в корневой директории файл .htaccess и добавьте такую строку
Код
AddDefaultCharset UTF-8
И отдельно от .htaccess, для проверки, поменяйте в новом файле кодировку на cp1251
1
2 / 2 / 1
Регистрация: 29.08.2011
Сообщений: 150
27.04.2012, 11:13  [ТС] 5
Цитата Сообщение от Love_and_Peace Посмотреть сообщение
мм.., думаю, что дело все-таки в кодировке, попробуйте такое -
создайте в корневой директории файл .htaccess и добавьте такую строку
Код
AddDefaultCharset UTF-8
И отдельно от .htaccess, для проверки, поменяйте в новом файле кодировку на cp1251
Не помогло!
0
2439 / 2290 / 595
Регистрация: 27.05.2011
Сообщений: 7,816
27.04.2012, 11:19 6
вы указывали кодеровку?
PHP
1
mb_substr($str, 1, 3, 'UTF-8');
0
2 / 2 / 1
Регистрация: 29.08.2011
Сообщений: 150
27.04.2012, 11:22  [ТС] 7
Поискал в интернете данную ошибку,нашел много отзывов кто страдает этой же проблемой,одно из решений было такое
PHP
1
2
3
4
5
6
<?php
mb_internal_encoding("UTF-8");
$name = 'Евгений';
$str = mb_substr($name,1,3);
echo $str;
?>
Добавлено через 2 минуты
Цитата Сообщение от crautcher Посмотреть сообщение
вы указывали кодеровку?
PHP
1
mb_substr($str, 1, 3, 'UTF-8');
Спасибо ваш вариант тоже работает,но вот почему явно надо указывать строке кодировку если у меня и так везде стоит UTF-8?
0
2439 / 2290 / 595
Регистрация: 27.05.2011
Сообщений: 7,816
27.04.2012, 11:32 8
Цитата Сообщение от Apollon89 Посмотреть сообщение
вот почему явно надо указывать строке
потому это ютф8 , она единственная кодировка символы которой весят в 2 раза больше , новые версии пхп будут более дружелюбны к ютф обещали
1
27.04.2012, 11:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2012, 11:32
Помогаю со студенческими работами здесь

Неработает substr
По идее этот пример должен вывести букву &quot;м&quot;, тестил вот на этом php- онлайн тестере...

Substr с переменной
при использовании функции substr не получается вывести данные с другой переменной вот сам код, в...

substr не работает
Привет! Хочу срезать текст до 100 символов. substr(0,100,$str);но ф-я ничего не возвращает. если...

Баг функции substr
При значение length = 10, вылазит знак вопроса. Чем-то напоминает ошибку в кодировке символов. Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru