Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
09.09.2015, 17:41
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
Добрый вечер. Вопрос, есть файл counter в нем текст: "Расс", функция strlen ($mytext1) выводит "11". Почему? $fp = fopen("counter.txt", "r"); if ($fp) { while (!feof($fp)) { $mytext = fgets($fp); $mytext1.=$mytext; } echo $mytext1; } fclose($fp); echo strlen ($mytext1); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 17:46
|
|||
|---|---|---|---|
strlen выдаёт не то что ожидаю. |
|||
|
#18+
Вы-первых, strlen считает в байтах, а не в символах. Во-вторых, в строке могут быть непечатные символы - пробелы, табуляции, переносы и т.п. Выведите переменную через var_dump. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 17:51
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
miksoft, выводит string(11) "Расс" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:02
|
|||
|---|---|---|---|
strlen выдаёт не то что ожидаю. |
|||
|
#18+
А если вывести bin2hex($mytext1) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:03
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
miksoft, efbbbfd0a0d0b0d181d181 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:05
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
nwstrlen, А в файле точно только одна строка? По факту вы хватаете длину последней строки. А там вполне могут быть какие-то пробелы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:06
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
nwstrlen, Похоже на юникод. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:10
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
DarkMaster, сейчас удалил из файла всё, открыл в notepad++ сохранил в utf8 без bom выводит string(8) "Расс" d0a0d0b0d181d181 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:12
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
nwstrlen, На каждый символ в UTF-8,UTF16 и т.п. отводится не один байт, как ты ожидаешь, а несколько. Для UTF-8 - символ может занимать до 3 байт по максимуму (насколько помню). Вот тебе strlen() и отдает число БАЙТ, которое строка занимает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:14
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
DarkMaster, Как мне получить точное число символов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:14
|
|||
|---|---|---|---|
|
|||
strlen выдаёт не то что ожидаю. |
|||
|
#18+
nwstrlen, Есть еще mb_strlen() и iconv_strlen() - погугли в эту сторону. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.09.2015, 18:18
|
|||
|---|---|---|---|
strlen выдаёт не то что ожидаю. |
|||
|
#18+
nwstrlenefbbbfd0a0d0b0d181d181 https://ru.wikipedia.org/wiki/UTF-8 В качестве BOM использует последовательность байт EF, BB, BF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=23&mobile=1&tid=1461540]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
85ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 264ms |
| total: | 462ms |

| 0 / 0 |
