Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: подсчет символов/строк
Форумы портала PHP.SU » » Вопросы новичков » подсчет символов/строк

Страниц (1): [1]
 

1. re_nat - 04 Июня, 2012 - 13:46:54 - перейти к сообщению
Спасибо всем, кто хотя бы прочтет Закатив глазки
Сначала изложу как обстоят дела, а затем: что же мне нужно.

Существует страница index, сверстанная, табличным методом. Фон у этой страницы статический (это сложная картинка и растягивать её нельзя ни под каким предлогом). Существует ячейка таблицы, в которую необходимо вывести некий объем текста.
Собственно, вот она:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <td width="574" height="618" valign="top" align="left" bgcolor="#d8a903" background="book_w/book_I.jpg">
  3.         <div>
  4.                 скрипт_вывода_текста
  5.         </div>
  6. </td>
  7.  

К сожалению содержание текста неизвестно. Это может быть монотонный текст; восклицания, написанные капсом или даже стих с картинками.

А нужно мне, чтобы, при выходе за допустимые границы, текст обрезался и вставлялась ссылка на страницу с его полным вариантом.

И как только я не пробовал считать знаки и строки, оптимальную длину текста вывести не удается. Разве только если обрабатывать каждый символ в тексте или выводить с помощью графической библиотеки)))

Подскажите, может подобные вещи реализуются как-то совсем иначе? Закатив глазки
2. dzubchik - 04 Июня, 2012 - 14:17:40 - перейти к сообщению
re_nat, пробуйте реализовать это на стороне клиента. используя javascript-библиотеки.
3. re_nat - 04 Июня, 2012 - 19:49:18 - перейти к сообщению
dzubchik, жаль, я совсем js не знаю. Ну ладно, хоть буду знать куда копать. Спасибо Вам)
4. kappa - 04 Июня, 2012 - 20:31:50 - перейти к сообщению
Можно использовать wordwrap()
5. re_nat - 04 Июня, 2012 - 22:05:11 - перейти к сообщению
kappa пишет:
Можно использовать wordwrap()

Нет, при чем тут wordwrap, для неё нужно знать длину строки. Я ведь не разбить строку не могу, а как раз таки подсчитать оптимальную длину Радость
6. DelphinPRO - 04 Июня, 2012 - 22:14:10 - перейти к сообщению
самое простое решение - прикинуть сколько примерно символов помещается в отведенном месте. на стороне сервера выводить это число с обрезкой по слову Элементу div сделать overflow:hidden
плюс, если текста больше чем мы примерно ожидаем - выводить ссылку "подробнее"
ее зафиксировать у нижнего края ячейки.
для пущей красивости внизу DIV спозиционировать фон переходящий от прозрачного к непрозрачному. фон взять из той части статической картинки, где находится ячейка. Таким образом можно добиться плавного затухания текста внизу.
7. kappa - 04 Июня, 2012 - 22:48:54 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $a = "
  2. С выходом ASP.NET WebAPI у разработчиков появилась возможность быстро создавать REST-сервисы в удобном виде, с одной стороны полностью реализуя принципы REST, а с другой используя всю мощь платформы ASP.NET.
  3.  
  4. Про возможности и применение WebAPI написано уже достаточно много статей, например, вы можете узнать о интересной функции самодокументирования API сервиса через ApiExplorer.
  5.  
  6. Существует еще одна замечательная возможность WebAPI, про которую написано не так много — это возможность WebAPI осуществлять самостоятельный хостинг сервиса (self hosting). В этой статье на примере разбирается, как создавать и запускать REST selfhosting-сервисы на базе WebAPI.";
  7.  
  8.  
  9. $lenghtString = 300;
  10. $b = substr($a, 0, $lenghtString);
  11. $c = strrpos($b, " ");
  12. echo substr($b, 0, $c);

 

Powered by ExBB FM 1.0 RC1