Php: правильно считаем количество символов в строке

23 апреля 2012. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Когда-нибудь видели на сайтах предупреждение: «Длина сообщения не более…» например, 500 символов? Начинаешь писать, честно укладываешься в 450 символов, а при отправке получаешь отлуп: слишком длинное сообщение…

Если вы догадаетесь сократить сообщение до 250 символов или использовать транслит, сообщение всё-таки удастся отправить, но остаётся желание кого-то взять за грудки и сказать: что ж ты, милый, людям голову-то морочишь?!..

На самом деле это означает, что «на той стороне» сидит несведущий вебмастер. Может, он иностранец и не знает, что такое кириллица, а может, из наших палестин недоучка. Причина такого расхождения в обещанной и реальной длине — размер кириллических символов в UTF-8: по 2 байта вместо 1 для латинских. Php-шная функция strlen считает длину строки в байтах, а не в буквах, и если буква занимает два байта, она засчитывается за две.

Ну хорошо, чужие сайты мы улучшить не можем, а как не делать такой ошибки у себя? Используем функцию iconv_strlen, и не забываем указывать кодировку. Итого:

/*считаем длину строки*/
$strLength = iconv_strlen('а вот тут наша строчка', 'UTF-8');

Кодировка — главный «крекс-пэкс-фэкс» функции, без него эффекта не будет.

Другой случай, когда разница между strlen и iconv_strlen оказывается существенной — обрезка строки до нужной длины. Strlen не только уменьшает вдвое число кириллических символов, но может также разрезать последний из них пополам. Если на странице сайта вы видите нечто вроде «А это анонс нашей замечательной стат?», это, скорее всего, тот самый случай. Когда такое вылезает в читаемом тексте — полбеды, но если таким образом выведется переменная в код скрипта, последствия могут быть очень неприятными — вплоть до полной визуальной гибели той части страницы, что идёт после «крамольного» участка. Функция iconv_strlen избавит нас от подобных неприятностей. Скажем ей за это спасибо. 🙂

Отзывов (28) »

WordPress: как сразу узнать, подписан ли комментатор на ответы

9 апреля 2012. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

В чём, по-вашему, главная головная боль владельцев блога-dofollow? Правильно: спамеры-ручники (спам-автомат мы отрезаем намного раньше). Люди, которые ходят по спискам dofollow-блогов и оставляют комментарии без души (хотя порой и с умом), зато со ссылкой. И хотя dofollow, как правило, вводят для повышения комментируемости, «холостые» комменты — вовсе не цель хозяина такого блога.

Что делать? Модерировать. Или премодерировать, как я. Какие комментарии пропускать, каждый блоггер определяет сам, но человекоподобность — главный критерий. Один из возможных признаков серьёзности комментатора — подписка на новые комментарии к данному посту (для подписки на wordpress-блогах используем плагин Subscribe To Comments).

Способ выделить комментарии, автор которых решил подписаться на ответы, давно известен. У меня, например, такие комменты отмечены пиктограммой-конвертиком. Однако этот способ сообщает о подписанности или неподписанности посетителя только после одобрения комментария и появления его на сайте. В админке и в почтовых уведомлениях админу об этом не говорится. А жаль — иной раз именно этой информации не хватает, чтобы окончательно решить, что делать с комментатором.

Итак, как же облегчить себе и жизнь и сразу узнать о намерении пользователя получить ваш ответ? Читать полностью »

Отзывов (43) »

Табличные значения display: table, table-cell, table-row, table-column, и другие

10 октября 2011. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Этой заметкой я хочу заглянуть в будущее, которое, надеюсь, будет не очень отдалённым. В будущее — потому что IE7 не поддерживает табличные значения свойства display, а с арены пока не сошёл.

Адекватной замены табличным свойствам, которая работала бы в IE7, на данный момент не существует. Многочисленные способы сымитировать табличные элементы на плавающих блоках дают весьма приблизительный результат и не гарантируют устойчивости, свойственной табличным элементам.

Читать полностью »

Отзывов (67) »

Display: inline-block, или на грани кроссбраузерности

5 сентября 2011. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Из этой заметки вы узнаете:

  • как ведёт себя элемент со значением display: inline-block;
  • какие бывают сюрпризы при его применении;
  • как обойти зловредный IE7;
  • а также как можно использовать display: inline-block и чем он лучше float: left.

Читать полностью »

Отзывов (47) »

Волшебное свойство display, или типы отображения элементов html

22 августа 2011. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Часть первая, адаптированная под ИЕ7.

Css-свойство display задаёт тип отображения элемента. На русский язык его можно перевести фразой: «Веди себя как». То есть, берём любой элемент html и говорим ему: веди себя как… блок, строка, таблица или вообще как будто тебя нет.

Все существующие на данный момент значения свойства display: Читать полностью »

Отзывов (21) »

Бесплатные блоги на замену ЖЖ

8 августа 2011. Рубрики: Интернет; автор — Юлия Панина aka Княгиня.

В текущем году ЖЖ-шную часть блогосферы вот уже дважды накрывал катаклизм. И не так уж важно (для конечного пользователя), кто в нём виноват: хакеры или техобслуживание, главное, что ЖЖ, он же Живой Журнал лежит, висит — короче, не работает. Меня, как счастливого обладателя двух standalone-блогов (чего и всем желаю), это не особо затрагивает, но даже у меня есть бесплатный блог в ЖЖ, который я создала, чтобы комментить знакомых, а потом стала использовать для болтологии, которую сочла недостойной персонального блога. А этой весной, когда ЖЖ убрал исходящие ссылки в nofollow, я прошлась по сервисам бесплатных блогов в поисках альтернативы. Где-то у меня уже были созданы блоги, где-то пришлось завести новые, зато я распробовала разные варианты и могу поделиться опытом с теми, кто ищет альтернативу ЖЖ.

Итак, мои варианты. Читать полностью »

Отзывов (45) »

Мой блог — в DMOZ

11 июля 2011. Рубрики: Интернет; автор — Юлия Панина aka Княгиня.

Как говорится, пустячок, а приятно. Чуть больше месяца прошло, как мой верстальный блог отпочковался от личного, но вот уже целая неделя, как он в DMOZ’е. Причём в таком разделе, в который реально стоит попадать. При этом первый блог тоже в DMOZ’е на прежнем месте, только описание поменялось. Но в «Личные страницы: Блоги» попасть не так сложно и не так интересно, а вот в «Дизайн и разработку сайтов: Блоги» куда как круче, так что повод залюбоваться собой есть. 🙂

Что может дать DMOZ? Учитывая, что в Рунете он малоизвестен, на трафик надеяться не приходится. Зато можно рассчитывать на трастовость, энное количество ссылок с каталогов, использующих базу DMOZ’а и немножко PR. Ну и, конечно, чувство собственного достоинства, с которым можно гордо уйти в отпуск. 😉

Отзывов (28) »

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18