File: //homepages/oneclick/WordPress/6.9/601/scripts/core/environment.php
<?php
namespace Core;
use \Exception;
class Environment
{
protected static $requiredVariables = array(
'applicationName',
'managedMode',
'opcache',
'BASE_URL_HOST',
'BASE_URL_PATH',
'BASE_URL_SCHEME',
'DB_main_HOST',
'DB_main_LOGIN',
'DB_main_NAME',
'DB_main_PASSWORD',
'DB_main_PREFIX',
'SETTINGS_admin_name',
'SETTINGS_admin_password',
'SETTINGS_admin_email',
'SETTINGS_title',
'SETTINGS_locale',
'WEB___DIR'
);
/**
* An array of legacy keys to map them to the correct keys
*
* @see self::$requiredVariables
* @var array
*/
protected static $legacyVariablesMapping = array(
// safemode legeacy fields
'SETTINGS_admin_name' => 'admin_name',
'SETTINGS_admin_password' => 'admin_password',
'SETTINGS_admin_email' => 'admin_email',
'SETTINGS_title' => 'title',
'SETTINGS_locale' => 'locale',
'DB_TABLE_PREFIX' => 'DB_main_PREFIX',
'DB_main_PREFIX' => 'DB_TABLE_PREFIX'
// add other mappings below
);
/**
* @param $varname
* @return null|string
*/
public function get($varname)
{
$value = $this->getFromEnvironment($varname);
return $value;
}
/**
* @param $key
* @return array|false|string
*/
protected function getEnvFunctionCall($param)
{
return getenv($param);
}
/**
* @param $varname
* @return null|string
*/
protected function getFromEnvironment($varname)
{
$value = $this->getEnvFunctionCall($varname);
if ($value !== false) {
return $value;
}
// check legacy keys
if (array_key_exists($varname, self::$legacyVariablesMapping)) {
$value = $this->getEnvFunctionCall(self::$legacyVariablesMapping[$varname]);
if ($value !== false) {
return $value;
}
}
return null;
}
public function systemCheck()
{
foreach (self::$requiredVariables as $variable) {
if (null === $this->get($variable)) {
throw new Exception("Undefined variable: $variable");
}
}
}
public function isLinux()
{
$pwd = getcwd();
if (preg_match("/:/", $pwd)) {
return false;
}
return true;
}
}