HEX
Server: Apache
System: Linux beta.alfanet.ee 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: busines1 (1252)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /home-ssd1/busines1/www/wp-content/plugins/imagify/classes/Traits/InstanceGetterTrait.php
<?php
namespace Imagify\Traits;

/**
 * Trait that simulates a singleton pattern.
 * The idea is more to ease the instance retrieval than to prevent multiple instances.
 * This is temporary, until we get a DI container.
 *
 * @since  1.9
 * @since  1.9.4 Renamed into InstanceGetterTrait.
 * @author Grégory Viguier
 */
trait InstanceGetterTrait {

	/**
	 * The "not-so-single" instance of the class.
	 *
	 * @var    ?object
	 * @since  1.9
	 * @access protected
	 * @author Grégory Viguier
	 */
	protected static $instance = null;

	/**
	 * Get the main Instance.
	 *
	 * @since  1.9
	 * @access protected
	 * @author Grégory Viguier
	 *
	 * @return object Main instance.
	 */
	public static function get_instance() {
		if ( ! isset( static::$instance ) ) {
			static::$instance = new static();
		}

		return static::$instance;
	}
}