Files
faveo/vendor/itsgoingd/clockwork/Clockwork/Helpers/StackFrame.php
2023-06-08 18:56:00 +05:30

39 lines
870 B
PHP

<?php namespace Clockwork\Helpers;
// A single frame of a stack trace
class StackFrame
{
public $call;
public $function;
public $line;
public $file;
public $class;
public $object;
public $type;
public $args = [];
public $shortPath;
public $vendor;
public function __construct(array $data = [], $basePath = '', $vendorPath = '')
{
foreach ($data as $key => $value) {
$this->$key = $value;
}
$this->call = $this->formatCall();
$this->shortPath = $this->file ? str_replace($basePath, '', $this->file) : null;
$this->vendor = ($this->file && strpos($this->file, $vendorPath) === 0)
? explode(DIRECTORY_SEPARATOR, str_replace($vendorPath, '', $this->file))[0] : null;
}
protected function formatCall()
{
if ($this->class) {
return "{$this->class}{$this->type}{$this->function}()";
} else {
return "{$this->function}()";
}
}
}