[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сокращение слов
Воитель
Мне нужно сократить некоторые словочетания так как это сделал бы человек.
Т.к. человек при сокражении слова опирается на какие-то правило. Значит программо это тоже можно реализовать.

Я не первый кто с этим столкнулся:
http://p2k.ru/archives/55

Но запустить этот класс я так и не сумел.
Я давно работаю с класса правда в AS Но как работать с классами в php видимо не разобрался т.к. не смог его запустить.
Не совсем понятно какие переменные должны входить в класс., но это ещё пол беды. Главное я не пойму как выше указанный класс работает.
В нём есть пользотельские внутриклассовые функции, но нет ни одного запуска этих функции.
Лично по мне в этом классе, только объявляются переменные.



Спустя 15 минут, 10 секунд (9.10.2009 - 16:20) glock18 написал(а):
shortening_string($s, $need_len = 0)

этот метод, по всей видимости, нужно использовать.

ну и объект класса создать сначала, разумеется.

Спустя 27 минут, 10 секунд (9.10.2009 - 16:47) Воитель написал(а):
Что-то не совсем понял:

Попробавал сначала в код поместить этот класс
И после него написать
$s = 'Слово';
$veggie = new shortening.shortening_string($s, 3);
print "$veggie";

Что-то не помогло

Спустя 5 минут, 25 секунд (9.10.2009 - 16:53) glock18 написал(а):
Цитата
Попробавал сначала в код поместить этот класс
И после него написать
$s = 'Слово';
$veggie = new shortening.shortening_string($s, 3);
print "$veggie";

Что-то не помогло


неудивительно. было бы нелишним сначала почитать, как с классами работать в пхп:

PHP
$instance = new shortening();
$string = $instance->shortening_string($str, 3);
echo $string;

Спустя 19 минут, 32 секунды (9.10.2009 - 17:12) Воитель написал(а):
Спасибо что исправили

Но ни черта у меня не получется. mad.gif
Проблемма со всеми функциями "mb_" -в этих функция я отсекаю mb_ и получаю обычные функции мне не понятно function shortening() Она вроде ни где не используется.

Сейчас борюсь с
Warning: preg_match() [function.preg-match]: Compilation failed: invalid UTF-8 string at offset 3 in z:\home\melmak.ru\www\raspisanie\sokrasch.php on line 45



Спустя 10 минут, 29 секунд (9.10.2009 - 17:23) glock18 написал(а):
Цитата
Но ни черта у меня не получется. 
Проблемма со всеми функциями "mb_" -в этих функция я отсекаю mb_ и получаю обычные функции мне не понятно function shortening() Она вроде ни где не используется.

Сейчас борюсь с
Warning: preg_match() [function.preg-match]: Compilation failed: invalid UTF-8 string at offset 3 in z:\home\melmak.ru\www\raspisanie\sokrasch.php on line 45


1. mb_ нужно подключить расширение пхп (скомпилить с ним, если под никсом, или подключить в php.ini под виндой)

2. shortening одноименна с классом - одна из форм записи конструктора. Если у тебя скрипты не в utf, то тебе придется в ней поменять кодировки. это касается твоей проблемы с preg_match.

Спустя 6 минут, 31 секунда (9.10.2009 - 17:29) Воитель написал(а):
Постараюсь разобраться.
Вот только подключать расширения к хостингу я не могу.
Придётся как-то по другому выкручиваться.

Спустя 11 минут, 41 секунда (9.10.2009 - 17:41) Воитель написал(а):
Кодировку файла поставил utf-8
Эти строки просто закрыл:
//mb_internal_encoding('utf-8');
//mb_regex_encoding('utf-8');
"mb_" просто убрал у остальных функций.

Ошибок теперь нет.
Но в результуте обработки класс ни как не изменяет строку.

Спустя 7 часов, 35 минут, 46 секунд (10.10.2009 - 01:17) Воитель написал(а):
glock18
Респект, всё работает.
Правда пришлось помудиться с кодировками .php сохранялся то по одной кодировке то по другой.

Посидел поразбирался в регулярках, понял суть кода.
Прочитал позновательную статью про мультибайтные функции.
http://www.php.su/functions/?cat=mbstring
Но после всего остался один вопрос: Почему у меня работает вот эта функция?
mb_strrev
Она же вроде должа отдельно подключаться?
Хотя заметил что в списке всех функций которые работают с мультибайтовыми строками её нет. Тогда почему она начинается с "mb_"
Вообщем кто она такая?
Да и в итернете про неё практически нет ни чего.

Спустя 8 часов, 3 минуты, 9 секунд (10.10.2009 - 09:20) glock18 написал(а):
Цитата
mb_strrev

это метод того класса, который ты используешь. так назвал ее автор. когда-то она была и правда mb_, но после того как оттуда убираешь все мультибайтные функции, он такой по-любому перестает быть smile.gif

Спустя 18 часов, 19 минут, 48 секунд (11.10.2009 - 03:40) Воитель написал(а):
Что-то этот момент я прощёлкал huh.gif


_____________
Вечно учусь.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.