| Server IP : 8.134.250.228 / Your IP : 216.73.217.39 Web Server : Apache System : Linux iZ7xv33p9e9ivk7yhmj7ibZ 5.10.134-18.al8.x86_64 #1 SMP Fri Dec 13 16:56:53 CST 2024 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/www.gobluemade.com/wp-content/plugins/elementor/core/utils/api/ |
Upload File : |
<?php
namespace Elementor\Core\Utils\Api;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Parse_Errors {
/**
* @var array<array{key: string, error: string}>
*/
private array $errors = [];
public static function make() {
return new static();
}
public function add( string $key, string $error ): self {
$this->errors[] = [
'key' => $key,
'error' => $error,
];
return $this;
}
public function is_empty(): bool {
return empty( $this->errors );
}
public function all(): array {
return $this->errors;
}
public function to_string(): string {
$errors = [];
foreach ( $this->errors as $error ) {
$errors[] = $error['key'] . ': ' . $error['error'];
}
return implode( ', ', $errors );
}
public function merge( Parse_Errors $errors, ?string $prefix = null ): self {
foreach ( $errors->all() as $error ) {
$new_key = $prefix ? "{$prefix}.{$error['key']}" : $error['key'];
$this->add( $new_key, $error['error'] );
}
return $this;
}
}