Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Веб - Программирование > PHP

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 22.01.2009, 12:26   #1
Неактивный пользователь
 
Пол:Мужской
Регистрация: 22.01.2009
Сообщений: 17
Репутация: 1
По умолчанию Как обрезать текст

Например есть текст:

Новая версия браузера доступна на 48 языках. По результатам многих тестов Firefox 3 в два - три раза быстрее своего предшественника и имеет более 15 тысяч крупных и мелких улучшений. Достаточно взглянуть на основные изменения. Новый браузер имеет абсолютно новую строку ввода адреса, в которую были внесены революционные изменения. В Firefox 3 имеется полноценная защита от вредоносных сайтов. Система работы с закладками полностью переработана и теперь отвечает всем, даже самым изысканным требованиям пользователей.

Как взять первых 30 слов и вывести:
Чтобы получилось типа такого вида(вид типа короткой новости из полного текста)

Новая версия браузера доступна на 48 языках. По результатам многих тестов Firefox 3 в два - три раза быстрее своего предшественника и имеет более 15 тысяч крупных и мелких улучшений. Достаточно взглянуть на основные изменения. Новый браузер имеет абсолютно новую строку ввода адреса, в которую были внесены революционные изменения...
salaciy_kram вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: смотреть фильм пиджакчто нельзя с брекетамибилеты гориллаз алматы - redkassa.ruнадфиль 180мм ширина 10Мебельный магазин: кухонный уголок купить в орле - Переходи на сайт!


Старый 22.01.2009, 17:07   #2
agent_smith
Пользователь
 
Пол:Мужской
Регистрация: 07.03.2008
Адрес: Киев
Сообщений: 111
Репутация: 35
По умолчанию Re: Как обрезать текст

Есть функция str-split, которая разбивает строку на массив.
Разобьешь строку на массив и потом в цикле выведешь первые 30 слов.

Вот ссылка на описание функции:
http://www.inphp.org/doc/phpmanual/f...str-split.html
agent_smith вне форума
 
Ответить с цитированием Вверх
Эти 3 пользователя(ей) сказали cпасибо за это полезное сообщение:
Старый 20.03.2009, 14:40   #3
Minds66
Неактивный пользователь
 
Регистрация: 20.03.2009
Сообщений: 2
Репутация: 0
По умолчанию Re: Как обрезать текст

Спасибо а можно обьяснить в точности как функция работает?
Minds66 вне форума
 
Ответить с цитированием Вверх
Старый 20.03.2009, 15:35   #4
agent_smith
Пользователь
 
Пол:Мужской
Регистрация: 07.03.2008
Адрес: Киев
Сообщений: 111
Репутация: 35
По умолчанию Re: Как обрезать текст

Цитата:
Сообщение от Minds66 Посмотреть сообщение
Спасибо а можно обьяснить в точности как функция работает?

Там же есть пример, как функцией пользоваться.

Код:
$str = "Hello Friend";
$arr1 = str_split($str);

print_r($arr1);

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => F
    [7] => r
    [8] => i
    [9] => e
    [10] => n
    [11] => d
)
agent_smith вне форума
 
Ответить с цитированием Вверх
Старый 02.04.2009, 07:04   #5
xenotec
Новичок
 
Пол:Мужской
Регистрация: 10.07.2008
Сообщений: 19
Репутация: 3
По умолчанию Re: Как обрезать текст

тогда уж http://www.inphp.org/doc/phpmanual/f...ord-count.html, в данном случае чай полезнее будет )
xenotec вне форума
 
Ответить с цитированием Вверх
Старый 21.04.2009, 12:10   #6
Stayron
Неактивный пользователь
 
Регистрация: 26.11.2007
Сообщений: 18
Репутация: 9
По умолчанию Re: Как обрезать текст

Цитата:
Сообщение от Minds66 Посмотреть сообщение
Спасибо а можно обьяснить в точности как функция работает?

Проще так:

$news_text_ar = explode(' ', $news_text)
$short_text = '';
for($i = 0; $i < 30; $i++) {
$short_text .= $news_text_ar[$i].' ';
}

Может где и опечатался, не тестил )) Нужно добавить проверку есть ли в тексте 30 слов (count($news_text_ar )).
Stayron вне форума
 
Ответить с цитированием Вверх
Старый 01.06.2009, 15:05   #7
nick_lavrik
Неактивный пользователь
 
Пол:Мужской
Регистрация: 17.02.2009
Сообщений: 9
Репутация: 1
По умолчанию Re: Как обрезать текст

Цитата:
Сообщение от Stayron Посмотреть сообщение
Проще так:

$news_text_ar = explode(' ', $news_text)
$short_text = '';
for($i = 0; $i < 30; $i++) {
$short_text .= $news_text_ar[$i].' ';
}

Может где и опечатался, не тестил )) Нужно добавить проверку есть ли в тексте 30 слов (count($news_text_ar )).

не такой подход слишком муторный
вот несколько вариантов неправильного срабатывания
1. подряд два пробела - будет пустое "слово"
2. текст с использованием тире (в данном случае тире будет идти как отдельное слово

я думаю в данном случае надо идти либо через regexp'ы, либо выкусывать предложение, т.е. ориентироваться не на количество слов, а на точку в конце предложения.
nick_lavrik вне форума
 
Ответить с цитированием Вверх
Старый 02.06.2009, 10:38   #8
Мазепа
Новичок
 
Пол:Мужской
Регистрация: 31.05.2009
Сообщений: 9
Репутация: 13
По умолчанию Re: Как обрезать текст

А может проще

string substr ( string $string , int $start [, int $length ] )

А ошметки последнего слова отсечь по последнему пробелу.
Мазепа вне форума
 
Ответить с цитированием Вверх
Старый 03.06.2009, 16:49   #9
Iight
Неактивный пользователь
 
Пол:Мужской
Регистрация: 12.01.2007
Сообщений: 12
Репутация: 3
По умолчанию Re: Как обрезать текст

см. Regualr Expressions
Iight вне форума
 
Ответить с цитированием Вверх
Старый 09.06.2009, 21:03   #10
boogger
Неактивный пользователь
 
Пол:Мужской
Регистрация: 29.12.2006
Сообщений: 3
Репутация: 1
По умолчанию Re: Как обрезать текст

Еще возможен такой вариант. Многие системы управления сайтами имеют встроенные функцмм автоматического обрезания материалов до небольшого размера в целях публикации чего-то типа подробного оглавления.
Тоже путь!
boogger вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обрезать доступ в инет. Трабл! finindanet Архив 2 21.03.2008 22:55
обрезать avi фильм Oganez Архив 1 13.02.2008 01:39
Обрезать видео файл zakler Архив 11 30.08.2006 09:27

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 06:01. Часовой пояс GMT +3.


Copyright ©2004 - 2026 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.05810 секунды с 13 запросами