Начинающим Web - разработчикам сайтов

Категории
Полезные сайты
Встроенные функции
Основные понятия
Синтаксис языка Perl
Переменные
Встроенные переменные
Шаблоны
      Операторы ( 1 стр. )
Операторы ( 2 стр. )
Встроенные функции - 1
Встроенные функции -2
Подпрограммы и др.

Встроенные функции ( 1стр. )

Данные функции являются по сути операторами, но имеют по отношению к ним самый высокий приоритет, т.е. применяются как термы. По характеру выражений их делят на две группы - списковые и унарные. По названию видно, что одни содержат несколько выражений, другие (une) - одно. В обоих случаях дополнительно используется оператор "," (запятая), который служит разделителем выражений в списке и завершающем элементом при указании выражения в унарном операторе. При использовании круглых скобок, обработка будет проходит в скобках, т.к. таким образом обозначаются функции и последовательность аргументов не имеет значения.

Если какая-либо функция вернет результат в двух контентах (в списковом и скалярном), то возможный код ошибки может быть пустой список или скаляр с ненайденным значением. дело в том, что каждая функция или оператор может иметь только свой вид значений в скалярном контенте, а в списковом - либо первый или последний элемент списка, либо число успешных операций. Определенного правила трансформации списка в скаляр нет.

Теперь давайте перейдем самим встроенным функциям. Ниже приведены весь их перечень в алфавитном порядке с возможными сочетании ( встроенная функция возможные сочетания ). Повторимся - приоритет между встроенными функциями равный.

abs выражение - возвращает абсолютное значение выражения.

accept NEWSOCKET, GENERICSOCKET - команда для открытия нового socket, которая работает по принципу accept() , т.е. возвращает либо адрес, либо false.

alarm секунды - указатель временного промежутка (счетчик времени), по истечению которого производится сигнал sigalarm текущему процессу. При использовании нескольких счетчиков в одной программе (но только в разных промежутках времени) возвращает остаточное значение предыдущего счетчика.

atan2 Y,X - возвращает арктангенс (Y/X) .

bind socket, name - присваивает сетевой адрес сокету. Переменная name должна содержать пакетный адрес сокета . Результаты TRUE и FALSE.

binmode файл - обрабатывает файл в бинарном режиме.

bless ссылка, класс ; bless ссылка - указание ссылки на объект, которому нужно присвоить класс, либо оставить текущий (при опускании сведений о классе).

caller ; caller выражение - результатом применения данной функции является выдача информации о вызываемой подпрограмме. Возвращает в скалярном контенте TRUE , если подпрограмма или процесс вызывались с помощью операторов eval() или require(), в противном случае будет FALSE . В списковом контенте для caller - в виде списка ( $package, $filename, $line), для caller выражение - список ( $package, $filename, $line, $subroutine, $hasargs, $wantargs), где

  • $package - имя пакета из которого сделан вызов
  • $filename - имя пакетного файла
  • $line - номер строки пакетного файла
  • $subroutine - имя подпрограммы
  • $hasargs - аргументы, которые есть в наличие
  • $wantargs - аргументы, которые необходимы

chdir выражение - смена текущей директории на указанную выражением. Умолчание выражения является переход на домашнюю директорию. При правильной смене выдается результат TRUE, в противном случае - FALSE.

chmod список - изменит право доступа к файлам, указанном в списке, где первый аргумент списка маска доступа в восьмеричном формате. Выдает число файлов, которые были изменены права доступа.

chop переменная ; chop список ; chop - работает по одинаковому принципу, что и chown , но исключает завершающий символ строки.

chown список - изменяет принадлежность файлов списка. Состоит из нескольких аргументов. Первый - номер нового UID, второй номер новой группы ( GID ), а затем уже перечень файлов.

chr число - Возвращает символ, указанного в наборе символов под номером "число". Например, chr(65) вернет A .

chroot /директория - указатель внутренней директории программы.

close FILEHANDLE - закрывает файл или процесс, указанный в FILEHANDLE, но при использовании в новой строке функции open() закрывать файл не обязательно.

closedir директория - закрывает директорию.

connect SOCKET , NAME - связь с удаленным сокетом, переменная NAME указывает на имя и полный запакованный адрес типа сокета. При ошибки возвращает FALSE и TRUE при успехе процедуры.

cos выражение - косинус выражения. обозначающий в радианах.

crypt текст - криптография текста

dbmclose хеш - закрытие связи между хешем и базой данных.

dbmopen хеш, база, режим - связывает файл *.dbm ( база данных) с хешем в определенном режиме, где база - имя базы (без .dir или .pag расширения). Если базы данных нет, то она будет создана в указанном режиме права доступа.

define выражение - функция определений выражений, которая применяется для тестирования функций, ссылок на наличие их значений. Способна различать нулевые и неопределенные значения. При положительном результате возвращает TRUE, а при отрицательном - FALSE .

delete выражение - удаление значений из хеша, а если последний связан с базой данных - очищает запись в этой базе.

die список - вне eval() печатает список в STDERR и выходит из программы с текущим значением $! . Если значение $! содержит ноль, то принимает значение $? >> 8 . Если значение $? >> 8 есть ноль, то принимает значение 255. Внутри eval() сообщение об ошибке помещается в переменную $@ и eval() прерывается с неопределенным значением.

do BLOСK - возвращает значение последней операции внутри блока, где BLOСK - циклический модификатор.

do выражение - здесь в данной функции выражение - имя файла, которое будет запускаться, как программа составленная на языке Perl.

each хеш - используется для вывода значения из хеша в виде массива, который будет состоять из двух составляющих - ключа и значения элемента хеша.

eof() ; eof; eof файл - служит для определения конца файла, в зависимости от того в каком сочетании данная функция применяется. Так eof() обрабатывает только последний файл из списка, а другие найдут конец каждого файла списка. Причем если не указывать файл , то обработается последний, доступный для чтения. Положительным результатом функции является- 1 . Файлы, открытые как терминалы не обрабатываются.

eval выражение - небольшая программа, указанная в выражение будет работать в контексте текущей со всеми параметрами последней. По умолчании выражения вступают в силу значение переменной S_.

exec список - закрывает внешнюю программу путем выполнения соответствующей команды из списка. На самом деле, если надо вернуться к управлению, то лучше производить системный вызов system(), . Если список представляет собой перечень более, чем одного аргумента, то вызывается execvp() с аргументами из списка . Если аргумент только один, то он проверяется на метасимволы shell . Если они присутствуют, то он далее передается /bin/sh -c для последующей обработки. Если же их нет, то аргумент передается напрямую execvp , который более эффективен. Так как exec() и system(0) не сбрасывает буфер ввода-вывода, то нужно дополнительно применять переменную $I.

exists выражение - проверка на наличие ключа в хеше, вернёт TRUE при положительном эффекте, независимо от значения VALUE.

exit выражение - закрывает текущую программу с кодом выражения.

exp выражение - в процессе обработки возвращает е (основание натурального логарифма e = 2.718281828...) в степень, указанную в выражение . По умолчанию обрабатывается $_ .

fcntl функция, файл, скаляр - производит системный вызов fcntl() , при указании в программе use Fcntl.

fileno файл - применяется для вывода описания файла.

flock файл, операция - производит системный вызов flock().

fock - производит системный вызов fock() , результатом чего является: pid (идентификатор процесса) дочернего процесса, относительно родительского, " ноль " - для дочернего процесса и неопределённое значение в случае не завершения данной операции. Такого рода результат может произойти, например, в случае установки в системе ограничения на количество процессов данного пользователя.

format - задает формат для оператора write.

formline формат, список - используется как внутренняя функция для format . Служит для составления значений из списка и последующего вывода их в переменную $^A.

getc , getc файл - находит, а затем возвращает символ из файла . При умолчании последнего берётся STDIN . По окончанию безрезультатного поиска возвращает пустую строку.

getlogin - возвращает указанный логин из /etc/utmp.

getpeername socket - применяется для нахождения упакованного адреса удаленного сокета.

getpgrp PID - результатом работы данной функции является вывод группы процессов, которая была указана в PID . При умолчании PID - группу текущего процесса.

getppid - возвращает PID "материнского" процесса.

getpriority - показатель текущего приоритета процесса или их групп, а также пользователя.

getsockname socket - возвращает адрес сокета локального компьютера.

getsockopt socket, level, opt. - возвращает опцию сокета.

glob выражение - выдаёт список файлов, которые удовлетворяет выражение .

gmtime выражение - служит для смены текущего времени на время по Гринвичу.

goto выражение , goto метка , goto &подпрограмма - служит для перехода на "точку" программы и выполнением программы с этого места. Нельзя помещать данную "точку" внутри подпрограммы или foreach цикла.

grep выражение, список ; grep блок, список - обрабатывает выражение или блок в списке, на предмет их сопоставлений с указанными. В скалярном контенте результат в количестве совпадений, в списковом - список элементов с результатом TRUE .

hex выражение - конвертирует шестнадцатеричное число, указанное в выражение в десятичное.

import - применяется как функция, но ей не является. С помощью неё можно импортировать имя модуля в другой модуль.

index строка, подстрока ; index строка, подстрока, позиция - начиная с выбранной вами позиции происходит обработка подстроки в строке . По умолчанию (переменная $[ не была изменена) номер первой позиции "ноль" . В случае отсутствия позиции обработка начинается с первой строки. При безрезультатном поиске подстроки возвращается " -1".

int выражение - возвращает указанное выражение целиком.

ioctl файл, функция, скаляр - системный вызов iotcl() , который дополнительно инициализируется в начале программы строкой: require " ioctl.ph".

join выражение, список - связывает строки списка или массива с помощью кода, указанным в выражение , в одну строку.

keys хеш - показывает массив всех ключей хеша.

kill список - посылает сигнал списку процессов , первым элементом списка должен быть порядковый номер сигнала. Возвращает число процессов, которым сигнал был послан успешно.

last ; last метка - прерывание цикла и переход в указанную метку. При отсутствии таковой - на ближайший внешний цикл.

lc выражение - перевод всех букв строки в нижний регистр.

lcfirst выражение - аналогичен предыдущей функции, но только в отношении первой буквы строки.

length выражение - возвращает длину строки выражения.

link OLDFILE, NEWFILE - функция создания файла NEWFILE , который присоединится к OLDFILE .

listen SOCKET, QUEUESIZE - эквивалентен системному вызову listen() . Возможные результаты TRUE и FALSE.

local список - данная функция перечисляет переменные и меняет их статус на локальные в блоке или подпрограмме, где применяется эта функция. При указании нескольких переменных используются круглые скобки. Эквивалентна системной функции my().

log выражение - логарифмирует выражение.

lstat файл ; lstat выражение - эквивалентен системному вызову stat(), но обрабатывает только ссылки на указанный файл .

m// - оператор совпадения.

map выражение, список ; map блок, список - обрабатывая указанные выражение или блок каждого элемента списка , выводит последовательные результаты.

mkdir директория, права - применяется для создания директории с определенными правами .

Результат 1 (да) и 0 (нет).

my список - присваивает всем переменным в списке локальный статус. При использовании нескольких переменных применяются круглые скобки.

next ; next метка - применяется в циклах для перехода соответственно на самый ближний внутренний цикл и на следующую фазу цикла, указанной меткой . Можно дополнительно применять блок continue, т.к. они не конфликтуют между собой.

no Module список - выбранный список модулей будет исключен от использования.

oct выражение - указанные в выражение восьмеричные цифры конвертируются в десятичные.

open файл ; open файл, выражение - либо открывает файл с указанном именем, либо открывает файл, описанный переменной ( выражение ), для последующих операций с ним. Такие операции обозначаются в начале имени файла следующими символами:

  • < - открытие файла для чтение.
  • > - открытие файла для записи.
  • >> - открытие файла для добавлений записей.
  • +< или +> - открытие файла и на запись и на чтение.
  • - - стандартный вход
  • >- - стандартный выход
  • | - имя файла действует как команда, с которой будет обеспечен программный канал, то есть вывод в дескриптор файла и будет передаваться на вход программе, указанной в выражение .

Если функция возвращает TRUE, то операция прошла успешно и если FALSE, то нет.

Если знак " |" указывается после имени команды, то вывод этой команды будет ассоциирован с дескриптором указанного файла , из которого будет производиться чтение. Запись - файл/ эквивалентна системному вызову popen() . Пример:

open(LOG, '>>/usr/spool/news/twitlog');

opendir указатель, выражение - открытие директории с именем, указанным в выражение , для ее последующей обработки функциями такими, как closedir(), readdir(), rewinddir(), seekdir(), telldir().

odr выражение - возвращает значение, в соответствии таблицы ASII , для первого символа выражения . По умолчанию обрабатывается значение переменной $_.

pack шаблон, список - используя указанный шаблон создается запакованный список в двоичном формате. Под шаблоном здесь следует понимать перечень нижеприведенных символов, которые служат для определения последовательности и типов упакованных значений.

  • a - применяется пробел для обозначения текстовой строки.
  • A - применяется 0 (ноль) для обозначения текстовой строки.
  • b - битовая строка, в которой нумерация битов возрастает.
  • B - битовая строка, в которой нумерация битов убывает.
  • h - аналогичен b, но является шестнадцатеричной строкой.
  • H - аналогичен B , но является шестнадцатеричной строкой.
  • c - символ со знаком.
  • C - символ без знака.
  • s - 1 байт со знаком.
  • S - 1 байт без знака.
  • i - 2 байта со знаком.
  • I - 2 байта без знака.
  • L (нижний регистр) - 4 байта со знаком.
  • L - 4 байта без знака.
  • n - 1 байт в сетевом формате.
  • N - 4 байта в сетевом формате.
  • v - аналогичен n , но в "VAX" формате.
  • V - аналогичен N, но в "VAX" формате.
  • p - указатель на строку, которая ограниченная "нулём".
  • P - указатель на строки, которые имеют конкретную длину.
  • u - упаковка в юникоды.
  • x - нуль-байт.
  • X - байт в резерве.
  • @ - "забить" всю позицию нулями.

Количество повторов обозначаются соответствующим числом сразу после каждой буквы (символа). Применение символа "*" (звездочка) после вышеуказанных обозначений означает использование прежних параметров. Шаблоны упаковки и распаковки абсолютно ничем не отличаются.

pipe READHANDLE, WRITEHANDLE - эквивалентен системному вызову pipe().

pop массив - удаление и возвращение последнего элемента массива, в результате чего длина массива становится меньше на 1 . При умолчании имени массива вступают в силу значения из @ARGV для главной программы и @_ (подпрограммы). Безрезультатная процедура означает, что массив пуст.

pop скаляр - результатом данной функции является числовое значение смещения от последнего m//g поиска.

далее>>>

Начинающим Web - разработчикам сайтов
Rambler's Top100 Рейтинг@Mail.ru
Hosted by uCoz