MOON
Server: Apache
System: Linux server.netcommlabs.in 3.10.0-1160.83.1.el7.x86_64 #1 SMP Wed Jan 25 16:41:43 UTC 2023 x86_64
User: dermova (1051)
PHP: 5.4.45
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/dermova/www/india/wp-content/plugins/mailchimp-for-wp/includes/class-array-bag.php
<?php

/**
 * Class MC4WP_Array_Bag
 *
 * @access private
 * @ignore
 */
class MC4WP_Array_Bag {

	/**
	 * @var array
	 */
	protected $array;

	/**
	 * @param array $array
	 */
	public function __construct( array $array ) {
		$this->array = $array;
	}

	/**
	 * @return array
	 */
	public function keys() {
		return array_keys( $this->array );
	}

	/**
	 * @param string $name
	 * @param mixed $value
	 */
	public function set( $name, $value ) {
		$this->array[ $name ] = $value;
	}

	/**
	 * @param string $name
	 * @param mixed $default
	 *
	 * @return mixed
	 */
	public function get( $name, $default = null ) {

		if( isset( $this->array[ $name ] ) ) {
			return $this->array[ $name ];
		}

		return $default;
	}

	/**
	 * @return array
	 */
	public function all() {
		return $this->array;
	}

	/**
	 * @param $prefix
	 *
	 * @return array
	 */
	public function all_with_prefix( $prefix ) {
		$return = array();
		$length = strlen( $prefix );

		foreach( $this->array as $key => $value ) {
			if( strpos( $key, $prefix ) === 0 ) {

				$new_key = substr( $key, $length );
				$return[ $new_key ] = $value;
			}
		}

		return $return;
	}

	/**
	 * @param $prefix
	 * @return array
	 */
	public function all_without_prefix( $prefix ) {
		$return = array();

		foreach( $this->array as $key => $value ) {
			if( strpos( $key, $prefix ) !== 0 ) {
				$return[ $key ] = $value;
			}
		}

		return $return;
	}
}