Server : nginx/1.20.1 System : Linux ccpf-production-2021 5.4.0-148-generic #165-Ubuntu SMP Tue Apr 18 08:53:12 UTC 2023 x86_64 User : forge ( 1000) PHP Version : 7.4.21 Disable Function : 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /home/forge/gcc-ccpf.com/wp-content/plugins/wp-migrate-db/class/ |
<?php
namespace DeliciousBrains\WPMDB;
class SetupProviders
{
public $providers = [];
public $classes = [];
function setup( $pro = false )
{
$potential_classes = [];
if ( $pro ) {
$pro_classes = [
\DeliciousBrains\WPMDB\Pro\ClassMap::class
];
$potential_classes = array_merge( $pro_classes, $potential_classes );
} else {
$potential_classes[] = \DeliciousBrains\WPMDB\Free\ClassMap::class;
}
foreach ( $potential_classes as $class ) {
$this->maybeAddProvider( $class );
}
if ( !empty( $this->providers ) ) {
$classes = $this->classes;
foreach ( $this->providers as $provider ) {
$vars = get_object_vars( $provider );
foreach ( $vars as $prop => $var ) {
if ( !\in_array( $var, $classes, true ) ) {
$classes[$prop] = $var;
}
}
}
$this->classes = $classes;
}
}
function maybeAddProvider( $class )
{
if ( class_exists( $class ) ) {
$this->providers[] = new $class;
}
}
}