You are here

SuperGlobalVariables.php in Anti Spam by CleanTalk 9.1.x

Same filename and directory in other branches
  1. 8.4 src/lib/Cleantalk/Common/Variables/SuperGlobalVariables.php

File

src/lib/Cleantalk/Common/Variables/SuperGlobalVariables.php
View source
<?php

namespace Cleantalk\Common\Variables;

use Cleantalk\Common\Templates\Singleton;

/**
 * Class ServerVariables
 * Safety handler for ${_SOMETHING}
 *
 * @depends \Cleantalk\Common\Templates\Singleton
 *
 * @usage \CleantalkSP\Variables\{SOMETHING}::get( $name );
 *
 * @package \CleantalkSP\Variables
 */
class SuperGlobalVariables {
  use Singleton;

  /**
   * @var array Contains saved variables
   */
  public $variables = [];

  /**
   * Gets variable from ${_SOMETHING}
   *
   * @param string $name Variable name
   *
   * @return string
   */
  public static function get($name) {
    return static::getInstance()
      ->get_variable($name);
  }

  /**
   * BLUEPRINT
   * Gets given ${_SOMETHING} variable and seva it to memory
   * @param $name
   *
   * @return mixed|string
   */
  protected function get_variable($name) {
    return true;
  }

  /**
   * Save variable to $this->variables[]
   *
   * @param string $name
   * @param string $value
   */
  protected function remember_variable($name, $value) {
    static::$instance->variables[$name] = $value;
  }

  /**
   * Checks if variable contains given string
   *
   * @param string $var    Haystack to search in
   * @param string $string Needle to search
   *
   * @return bool|int
   */
  static function has_string($var, $string) {
    return stripos(self::get($var), $string) !== false;
  }

  /**
   * Checks if variable equal to $param
   *
   * @param string $var   Variable to compare
   * @param string $param Param to compare
   *
   * @return bool|int
   */
  static function equal($var, $param) {
    return self::get($var) == $param;
  }

}

Classes

Namesort descending Description
SuperGlobalVariables Class ServerVariables Safety handler for ${_SOMETHING}