Forum Webscript.Ru
Программирование => Perl => Тема начата: stil от 03 Декабря 2004, 18:21:01
-
Здравствуйте.
Подскажите, пожалуйста, по поводу encode().
Дело в том, что у меня скрипт на perl. В доках к нему написано, что для работы требуется:
"- perl 5.8.x (т.к. используется функция encode() )
- модуль URI (для проверки правильности url)
- модуль XML::DOM (для разбора на ноды)
- модуль DBI (для работы с базой данных)"
Все эти модули есть, а вот perl 5.6.1 и функции encode() там нет. Добиться от хостера установки perl 5.8.x вряд ли возможно, поэтому возник вопрос - а можно ли реализовать эту функцию как-то иначе?
Или может легче будет переписать скрипт на php (правда, я не знаю, возможно ли вообще на php реализовать функцию encode(), т.к. понятия не имею, что это за функция :) ) ?
Конкретно в скрипте поискал слово encode и нашел вот это:
if ($node and $node->getNodeType == TEXT_NODE) {
$$item{DATA} = encode(\'cp1251\', $node->getData());
print STDERR "$$item{DATA}...\\t" if ($tag_name eq \'title\');
}
и вот это:
if ($dbh->do(\'INSERT INTO pm_genre (code, name) VALUES (?, ?)\', undef,
$name, encode(\'cp1251\', $node->getData()))) {
$genres{$name} = $dbh->selectrow_array(\'SELECT last_insert_id()\');
$dbh->commit();
}
Очень надеюсь, что поможете. Спасибо за внимание :)
-
stil это не модуль перла.
Скорее всего это модуль Encode. Посмотри, есть ли в скриптах упоминание этого модуля, если есть - установи.
-
perldoc Text::IConv
-
Спасибо за советы - с encode разобрался. Но потом возникла другая проблема, а потом еще одна и еще... Короче, видимо этот скрипт легче заново написать, чем заниматься его исправлением :(
Правда, мой программист знает только php и в связи с этим возникло предложение - может быть кто-то посмотрит этот скрипт и напишет его описание (разумеется не бесплатно :)), чтобы потом мой программист на основе этого описания смог создать такой же скрипт на php? Топик с этим предложением я создал в соответствующем разделе форума: http://forums.webscript.ru/showthread.php?s=&threadid=18767&msgnum=0