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 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.