HEX
Server: Apache/2.4.29 (Ubuntu)
System: Linux instance-1 5.4.0-1092-gcp #101~18.04.1-Ubuntu SMP Mon Oct 17 18:29:06 UTC 2022 x86_64
User: web202 (5061)
PHP: 8.1.14
Disabled: 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, exec, shell_exec, system, passthru, proc_open, proc_close, popen, parse_ini_file, show_source
Upload Files
File: /data0/www/clients/client33/web202/web/wp-content/plugins/ninjafirewall/lib/class-php-session.php
<?php
/*
 +=====================================================================+
 |    _   _ _        _       _____ _                        _ _        |
 |   | \ | (_)_ __  (_) __ _|  ___(_)_ __ _____      ____ _| | |       |
 |   |  \| | | '_ \ | |/ _` | |_  | | '__/ _ \ \ /\ / / _` | | |       |
 |   | |\  | | | | || | (_| |  _| | | | |  __/\ V  V / (_| | | |       |
 |   |_| \_|_|_| |_|/ |\__,_|_|   |_|_|  \___| \_/\_/ \__,_|_|_|       |
 |                |__/                                                 |
 |  (c) NinTechNet Limited ~ https://nintechnet.com/                   |
 +=====================================================================+
*/

if ( class_exists('NinjaFirewall_session') ) {
	return;
}

class NinjaFirewall_session {


	/**
	 * Start a PHP session.
	 */
	public static function start() {
		/**
		 * Make sure no header was sent already, no session exists
		 * and that sessions are enabled.
		 */
		if ( headers_sent() || session_status() !== PHP_SESSION_NONE ) {
			return false;
		}
		return session_start();
	}


	/**
	 * Read session data.
	 */
	public static function read( $key ) {

		if ( isset( $_SESSION[ $key ] ) ) {
			return $_SESSION[ $key ];
		}
		return null;
	}


	/**
	 * Write session data.
	 */
	public static function write( $data = [] ) {

		foreach( $data as $key => $value ) {
			$_SESSION[ $key ] = $value;
		}
	}


	/**
	 * Unset a key or the whole session array.
	 */
	public static function delete( $key = '') {

		if ( $key ) {
			unset ( $_SESSION[ $key ] );
		} else {
			$_SESSION = [];
		}
	}


	/**
	 * Write session data and end session.
	 */
	public static function close() {

		return session_write_close();
	}


	/**
	 * Return the session name.
	 */
	public static function name() {

		return ini_get('session.name');
	}

}

// =====================================================================
// EOF