Your IP : 216.73.216.216


Current Path : /var/www/ooareogundevinitiative/wp-content/plugins/brizy/admin/
Upload File :
Current File : /var/www/ooareogundevinitiative/wp-content/plugins/brizy/admin/serializable.php

<?php

abstract class Brizy_Admin_Serializable implements Serializable, JsonSerializable {

	/**
	 * @return string
	 */
	public function serialize() {
		$get_object_vars = get_object_vars( $this );

		return serialize( $get_object_vars );
	}

	/**
	 * @param string $data
	 */
	public function unserialize( $data ) {

		$vars = unserialize( $data );

		foreach ( $vars as $prop => $value ) {
			$this->$prop = $value;
		}
	}

	/**
	 * @return mixed
	 */
	abstract public function convertToOptionValue();

	/**
	 * @param $data
	 *
	 * @throws Exception
	 */
	static public function createFromSerializedData( $data ) {
		throw new Exception( 'Not implemented' );
	}

	/**
	 * @return array|mixed
	 */
	public function jsonSerialize() {
		return get_object_vars( $this );
	}
}