LINUX.ORG.RU

фнешние функции в перле


0

0
Добрый день! Прежде чем спросить, скажу- пролазил я по ресурсам в поисках ответа и ничего дельного не нащел, так что если будте пинать , то пинайте на ссылку конкретную. :-)
Теперь вопрос: у меня есть файлик form.pl в нем есть функция frel, мне оооочень надо использовать в других файлах эту функцию. Как это сделать? В си это был include а в перле? Вставлять эту функцию в исходники каждого следующего скрипта - рука не поднимается, слллишком уж она (функция) большая. Помогите пожалуйста.
anonymous
Подсказка: ключевое слово -- модули. Подробностей сейчас не скажу, уже больше года Перлом не занимался.

О! Вспомнил ещё 2 ключевых слова: package и use.

DKorolkov
()
perldoc perlmod
anonymous
()
Решение "в лоб" - do "include_script";
Kirill
()
Например так:
require("/usr/lib/mailcop/mailcop_module");
и все функции из mailcop_module будут тебе доступны...
McMCC ★★★
()
Выносишь эту самую frel в отдельный файл-модуль, скажем, Frel.pm. Оформляешь его примерно так:
package Frel;
BEGIN{
use Exporter();
use vars qw(@ISA @EXPORT %EXPORT_TAGS);
@ISA=qw(Exporter);
@EXPORT=qw(&frel);
%EXPORT_TAGS=();}

sub frel{
# ...
}

END{1;}

В основной программе:

BEGIN{
use Frel;}
# ...
&frel;
# ...

Подробнее поискать здесь:
http://www.lib.ru/PERL/russperl5/perl.txt
josephson ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.