Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Майкл Скоуфилд
5 / 5 / 2
Регистрация: 25.09.2015
Сообщений: 138
1

Баг функции substr

23.09.2018, 21:02. Просмотров 334. Ответов 4
Метки нет (Все метки)

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


Скрин ошибки

PHP
1
2
3
4
5
6
7
<?php
 
    $comment = 'В области веб-программирования, в частности серверной части, 
    PHP — один из популярных сценарных языков (наряду с JSP, Perl и языками, используемыми в ASP.NET). ';
    print substr($comment, 0 , 10);
    print '...'
?>
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2018, 21:02
Ответы с готовыми решениями:

Непонятка в работе функции substr
Значит рнр-код такой (кодировка рнр-файла - УТФ-8): for ($i=0; $i&lt;strlen($CoName);...

Ошибка с substr(): "substr() expects parameter 1 to be string, array given"
Помогите, не могу понять что не так. Как сделать что-бы заработало? Вот часть кода: $rgrt_one =...

substr
не могу понять как можно сделать substr 0 13 на 13 если print_r(end($pi)) = Array ( =&gt; 0 13 ...

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

SUBSTR
Всем добрый день! Подскажите, пожалуйста, как из строки &lt;li&gt;&lt;a title=&quot;&quot;...

4
Jewbacabra
Эксперт PHP
4035 / 3317 / 1429
Регистрация: 24.04.2014
Сообщений: 10,022
23.09.2018, 21:21 2
Цитата Сообщение от Майкл Скоуфилд Посмотреть сообщение
Не подскажите что за беда?
Потому что надо использовать mbstring. В кодировке utf8 киррилический символ занимает 2 байта, и получается что substr обрезает пол символа.
0
Майкл Скоуфилд
5 / 5 / 2
Регистрация: 25.09.2015
Сообщений: 138
23.09.2018, 21:36  [ТС] 3
Функция имеет тот же принцип работы что и substr?

Попробовал, не работает.


PHP
1
2
3
4
5
6
7
<?php
 
    $comment = 'В области веб-программирования, в частности серверной части, 
    PHP — один из популярных сценарных языков (наряду с JSP, Perl и языками, используемыми в ASP.NET). ';
    print mbstring($comment, 10, 10);
    print '...'
?>
0
Jewbacabra
Эксперт PHP
4035 / 3317 / 1429
Регистрация: 24.04.2014
Сообщений: 10,022
23.09.2018, 21:38 4
mbstring это расширение, а не имя функции
Аналогом substr будет mb_substr
1
Майкл Скоуфилд
5 / 5 / 2
Регистрация: 25.09.2015
Сообщений: 138
23.09.2018, 21:58  [ТС] 5
Уже погуглил =)
Его нужно установить ещё.
Спасибо за информацию. Буду иметь ввиду в будущем.
Я ж так понимаю это расширение с аналогичными функциями в стандартном php, только для работы с большим колличеством кодировок.
Если я не прав, поправьте.
0
23.09.2018, 21:58
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2018, 21:58

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

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

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.