Caller выражение caller



caller выражение
caller


Возвращает контекст вызова текущей подпрограммы. В скалярном контексте true если это подпрограмма или процедура вызванная операторами eval() или require() и false - иначе. В списковом это список ($package, $filename, $line), где

  • $package - имя пакета
  • $filename - имя файла пакета
  • $line - номер строки откуда был сделан вызов.

Если указано выражение то возвращается список:

($package, $filename, $line, $subroutine, $hasargs, $wantargs)

Выражение определяет "глубину" вложенности просмотра стека вызовов.

  • $subroutine - имя подпрограммы
  • $hasargs - имеющиеся аргументы
  • $wantargs - необходимые аргументы

Применение данной функции в DB пакете возвращает более детальную информацию. К списку аргументов добавляется список @DB::args.



Содержание раздела