19 const PATH = __DIR__ .
'/../../../.env';
29 file_exists(self::PATH) or
exit(
'No such .env file');
30 foreach (parse_ini_file(self::PATH) as $prop => $value) {
31 $this->$prop = $value;
33 $this->IP = $this->
ip();
35 $this->SYSTEM_SECRET_KEY = md5($this->DB_PASSWORD . $this->DB_DATABASE . __FILE__);
36 $this->IS_CLI = in_array(PHP_SAPI, array(
'cli',
'cli-server',
'phpdbg'));
37 $this->TEMP_PATH = realpath(__DIR__ .
'/../../../temp');
49 if (array_key_exists(
'HTTP_X_FORWARDED_FOR',
$_SERVER) && !empty(
$_SERVER[
'HTTP_X_FORWARDED_FOR'])) {
50 if (strpos(
$_SERVER[
'HTTP_X_FORWARDED_FOR'],
',') > 0) {
51 $addr = explode(
",",
$_SERVER[
'HTTP_X_FORWARDED_FOR']);
52 return trim($addr[0]);
54 return htmlspecialchars(
$_SERVER[
'HTTP_X_FORWARDED_FOR'], ENT_QUOTES);
72 || (!empty(
$_SERVER[
'HTTP_X_FORWARDED_PROTO']) &&
$_SERVER[
'HTTP_X_FORWARDED_PROTO'] ==
'https')
73 || (!empty(
$_SERVER[
'HTTP_CF_VISITOR']) &&
$_SERVER[
'HTTP_CF_VISITOR'] ==
'{"scheme":"https"}');
83 public function set(
$name, $value)
85 if (self::$e->
$name == $value)
return;
86 file_exists(self::PATH) && clearstatcache(
true, self::PATH);
87 $file = new \SplFileObject(self::PATH,
'a+b');
88 $file->flock(LOCK_EX);
92 $rx =
'#^' .
$name .
'=#i';
93 foreach (
$arr as $k => $v) {
94 if (preg_match($rx, $v)) {
101 $file->flock(LOCK_UN);
102 self::$e->$name = $value;
112 foreach (
$arr as $key => $value) {
113 self::$e->$key = $value;
115 if (!is_array(self::$e->GROUPS_USERS)) {
116 self::$e->GROUPS_USERS = json_decode(self::$e->GROUPS_USERS,
true);
if($_POST['code']==file_get_contents($_SERVER['DOCUMENT_ROOT'] . $row->file)) $file
Env класс управляющий, добавляющий или записывающий переменные среды
setcookie('FROM_UID', $uid, [ 'expires'=> time()+31536000, 'path'=> '/', 'domain'=> $_SERVER['HTTP_HOST'], 'secure'=> Wrong\Start\Env::$e->IS_SECURE, 'httponly'=> false, 'samesite'=> Wrong\Start\Env::$e->IS_SECURE ? 'None' :'Lax']) or setcookie('FROM_UID' Wrong Start Env::$e IS_SECURE
setcookie('FROM_UID', $uid, [ 'expires'=> time()+31536000, 'path'=> '/', 'domain'=> $_SERVER['HTTP_HOST'], 'secure'=> Wrong\Start\Env::$e->IS_SECURE, 'httponly'=> false, 'samesite'=> Wrong\Start\Env::$e->IS_SECURE ? 'None' :'Lax']) or setcookie('FROM_UID' $_SERVER['HTTP_HOST']
if(($dbh=Connect::getInstance(true) ->dbh) && $dbh->query("SHOW TABLES") ->fetchAll() && $dbh->query("SELECT COUNT(*) FROM `users`") ->fetchColumn()) if(!empty($_POST)) exit